Exceptions in handlers or on_success which subclass ValueError would
previously be caught and reported as a JSON decoding problem, and
on_error() would be called (with status_code=200).
New parameter `handlers` has a list of message types for which
corresponding handlers should be called. For example, for message types
['delete', 'limit', 'disconnect'] the handlers on_delete, on_limit,
on_disconnect will be invoked if the streamed message has the
corresponding attribute. If the handler returns True then more handlers
might be invoked, otherwise message processing stops. Before all
handlers are called, special on_success handler is invoked with the same
logic: continue message handling if True is returned.
This approach maintains backwards compatibility by not breaking any
existing behaviors.
update_profile_background_image has been in endpoints.py twice for a
bit, my bad.
Using update_profile_banner_image for the function name to update
profile banner image (that's what it was called previously)