Respond with HTTP 400 Bad Request on invalid revision number

CouchDB should return HTTP 400 instead of HTTP 500 response
when revision number isn't integer like "foo-bar" as like as it does
for completely invalid revisions like "foo".

COUCHDB-2375
I feed bad about try/catch too, but it seems there is no way to handle it better /: