Handle PUT/POST requests which have JSON in request body

Backbone.js and other such frameworks by default send PUT/POST data as JSON embedded in the request body. Backbone can be configured (<http://backbonejs.org/#Sync-emulateJSON>) to send ordinary form data in a field called 'model', but the application needs to be aware of this (<http://stackoverflow.com/questions/9133798/backbone-js-create-method-not-sending-parameters-to-sinatra>). It would be nice for Limonade to transparently handle this type of request so that the application sees the request as a regular PUT or POST.

This pull request implements this. All tests still pass. Limonade decodes the JSON and populate the `$GLOBALS` array with the key-value pairs, just as a form post might do.