Allow handlers to return errors

It would be nice to be able to return errors from handlers.

``` go
m.Get("/", func() {
	if err := doSomething(); err != nil {
		// replace this
		return http.StatusInternalServerError, err.Error()
		// with this
		return err
	}
})
```