Usergrid 2180 - Error handling improvements

Two parts to this:

1) USERGRID-2361 "Stop logging HTTP status 2xx and 4xx responses as errors." These are not errors and should not be logged at log level ERROR.

2) USERGRID-2339 "JsonUtils.java should not silently fail." This may be causing us to mask all sorts of errors. If there is an error reading incoming JSON, we should respond with an HTTP 400 error (client is bad) and if there is an error generating outgoing JSON, we should respond with 500 (server error).