Failover handlers when async_handler fails

This PR allow the users to define an array of failover handlers when the async_handler fails, for example in a Redis push, connection etc...

The users can use it in this way:

```ruby
Rollbar.configure do |config|
  config.failover_handlers = [failover1, failover2] # failover1 and failover2 are just objects responding to #call
end
```

It's also possible to use the default async handler:

```ruby
Rollbar.configure do |config|
  config.failover_handlers = Rollbar.default_async_handler
end
```
An interesting refactor could be replace the `Rollbar.default_async_handler` in order to use classes like `Rollbar::Delay::Thread` or `Rollbar::Delay::GirlFriday`. I think that `Rollbar::Delay::Thread` could be the most used failover handler.
@brianr changed.

I've removed the call to `report_internal_error`, but this error should be logged and tracked in rollbar. Instead of use `report_internal_error` do you prefer to use just `report_exception` ?