Add Sinatra::JSONRequest module with body_as_json helper

We've found this useful in dealing with json request bodies; it abstracts away the "is there a non-nil/non-empty body?  Is it valid JSON?" and returns the parsed body.