Basic support for async events

This pull request provides basic support for asynchronous reporting of events. It's modeled closely [Airbrake's implementation](https://github.com/airbrake/airbrake/wiki/Using-Airbrake-asynchronously), which I found to be very flexible to use. I didn't include a default option because doing it yourself is usually only a line or two… plus I wanted to keep this PR as focused as possible. 

I just realized I should add documentation, too. I can add something to the README, or write a wiki page… your call.