Added ApiProblemResponse and response sender

- ApiProblemResponse is capable of "rendering" itself.
- SendApiProblemResponseListener ensures that stack traces are included
  when display_exceptions is enabled

Essentially, this provides a way for listeners to return an ApiProblem "early", largely removing the necessity of a dedicated renderer. This may also answer some critiques from @ocramius regarding the usage of ApiProblem and ApiProblemModel as return values.

As an example, a `dispatch.error` listener could do the following:

```php
$apiProblem = new ApiProblem($ex->getCode(), $ex);
return new ApiProblemResponse($apiProblem);
```

In other locations, such as the new authentication/authorization library, we could create and return an ApiProblemResponse early, bypassing the rest of the MVC:

```php
$apiProblem = new ApiProblem(401, 'Authentication failed');
return new ApiProblemResponse($apiProblem);
```

The sender could also open us up to the possibility of having a map of exception types to handlers that could fill in ApiProblem details based on the exception.

## Todo
- [x] Update ApiProblemListener to return ApiProblemResponse
- ~~[ ] Potenially alter RenderErrorListener to return ApiProblemResponse~~
- [ ] On merge, update zfcampus/zf-rest to return ApiProblemResponse instead of ApiProblemModel