Don't wrap the async call in a try/catch, this is sometimes problematic.
Add another convenience call for async interating.  This belongs in a macro.
Handle errors, and use some node.js specific stuff.
- Add Assert class for wrapping different logging implementations.
- Added global Dispatcher messages. Still a WIP.
- TODO: async stuff can go away, use continuation instead.