Starts working on the async-refactor. This will be the only feature in
0.5.0 I think.
First version of the async refactor.