Refactor BasicCrawler so that it works better with Apify SDK init

crawler = BasicCrawler()

async with Actor:
    await crawler.run()

⬆️ This doesn't work, but it'd be nice if it did.

I guess that it'll require some internal restructuring of BasicCrawler, but it shouldn't be breaking.

Originally posted by @janbuchar in #691 (comment)