Introduced more flexible callbacks.
Callbacks are now called when the response
is about to be written.
A callback now takes the actual request as
first parameter. And can be any object that is
callable. Furthermore the signature of the
return value has changed to a tuple returning
the status code along with the headers and the body.
This allows for more logic in the callbacks.

Callbacks and regex url matching now work together
because the real request is used for passing the
url the callback instead of the Regex
Fixed an issue were callbacks would override them selfs with str
which breaks any subsequent requests
Merge remote-tracking branch 'upstream/master'
Merge pull request #47 from kairichard/master

Improved Callbacks