Refactored the `RequestFuture` to better handle callbacks.

This commit has two significant aspects:

1. The ErrorListener is (re)introduced, which means that we
   are now reporting issues through an optional callback
   interface.

2. Support has been added for multiple error and session
   change listeners. This also means that the callback
   interfaces have been altered to return a boolean flag
   indicating whether the event is consumed by the particular
   implementation or not. A consumed event will not bubble
   any further in the chain of callbacks.
Added convenience methods for handling global callbacks.

One can now register and unregister global error and session
change listeners by using static helper methods directly on the
Podio facade.