Fixed issue #362 - Unhandled HTTP Exceptions returning HTML instead of JSON

I have implemented a fix that forces all unhandled exceptions to be converted into a JSON response. Previously the framework was returning unwanted HTML responses which could potentially break RESTful clients expecting a JSON formatted response.

```
HTTP/1.0 404 NOT FOUND
Content-Type: text/html
Content-Length: 233
Server: Werkzeug/0.9.6 Python/3.4.2
Date: Fri, 17 Oct 2014 17:20:57 GMT

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>404 Not Found</title>
<h1>Not Found</h1>
<p>The requested URL was not found on the server.  If you entered the URL manually please check your spelling and try again.</p>
```

```
HTTP/1.0 405 METHOD NOT ALLOWED
Content-Type: text/html
Allow: POST, OPTIONS
Content-Length: 178
Server: Werkzeug/0.9.6 Python/3.4.2
Date: Fri, 17 Oct 2014 17:23:01 GMT

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>405 Method Not Allowed</title>
<h1>Method Not Allowed</h1>
<p>The method is not allowed for the requested URL.</p>
```

After this fix now all exceptions are returned in JSON format as shown below.

```
HTTP/1.0 404 NOT FOUND
Content-Type: application/json
Content-Length: 33
Server: Werkzeug/0.9.6 Python/3.4.2
Date: Fri, 17 Oct 2014 17:25:43 GMT

{
  "message": "404: Not Found"
}
```

```
HTTP/1.0 405 METHOD NOT ALLOWED
Content-Type: application/json
Content-Length: 42
Allow: OPTIONS, POST
Server: Werkzeug/0.9.6 Python/3.4.2
Date: Fri, 17 Oct 2014 17:25:01 GMT

{
  "message": "405: Method Not Allowed"
}
```
I think you should use `@blueprint.errorhandler` here instead of `app_errorhandler`. I believe the former sets the error handler for exceptions arising from the blueprint only, and the latter sets the error handler for all exceptions arising anywhere in the Flask application.

(This is where a unit test comes in handy...)