Custom 'async' for better errors

Wrote a custom async.series and .parallel to improve the error handling behavior.

cc @squamos