Use Hapi

let's use hapi js, while changing the code i noticed some sweet
stuff hapi does for us out of the box:

 - taking care of bodyparsing & query parameter parsing
 - taking care of validation
 - taking care of routing

I had to add some custom code to use our old error messages,
however if we are fine with the one from hapi, I am happy to
change that.

I deleted one test because it does not make sense for us now,
as the hapi validator takes care of it for us.
This won't work with `path: '/'`.  We want to allow any path as the path depends on the CouchDB configuration and there's no reason to make any restrictions here.