Add AutoContext to automatically insert tasks in batches

Automatically insert asyncs in batches as they are added to the context instead of waiting until the context is closed.
Also allows custom batch size.

Here is a PR that uses add_async() with AutoContext: https://github.com/ericolson-wf/furious/pull/4