Cleanup errback and Promise.cast
Add test for promise cast
Merge pull request #912 from arv/async-throw-state

Simplify async throw state