minor improvements and asynchronous exception handling