Return 422 instead of 500 when handling body

Using a 4xx error would be more appropriate for this since the server is parsing the content from the client and needs to let the client know the data is malformed (not the actual HTTP request but i.e. JSON semantics). The definition for 422 is described in [RFC 4918](https://tools.ietf.org/html/rfc4918#section-11.2)
Fix typo in the guide introduction
Improve keepalive tests
Merge pull request #369 from rramsden/patch-1

Fix typo in the guide introduction
Fix cowboy_websocket_handler callback spec
Replace terminate/2 with terminate/3, adding a Reason

This should have been done a *long* time ago, back when I initially
added Websocket support. This is the first part of two in improving
loop handler support with regards to socket closure.

Reason may include: {normal, shutdown} for the most normal shutdown,
{normal, timeout} for a loop handler timeout shutdown, or {error, _}
if an error occured.
Do not require inets for running tests anymore
Make cowboy_static use universal time
Merge branch 'master' of https://github.com/0x00F6/cowboy
Do not crash if connection is closed while sending static file
Fix handler state change in cowboy_rest
Add HTML5 Video Example to the static example
Merge branch 'fix_change_state' of https://github.com/nevar/cowboy
Remove cowboy_dispatcher

Types and code are moved to cowboy_router. The match/3 export
from cowboy_dispatcher isn't available anymore as it is called
internally.
Do not transform URIs to Unicode
Expose uppercase binary converter
Update handler callback specs

There is one another {upgrade, ...} quintuple allowed as the result of
Handler:init call, somewhy not mentioned in the callback specifications.
New routing

Ultimately few things change, it's mostly just a nicer syntax and
slightly different expectations. The name of the value `dispatch`
did not change, because the previous dispatch values will now fail
if the code is not updated to using `cowboy_router:compile/1`.

No constraints have been implemented in this commit.
Add the 'int' constraint
Add the 'function' constraint