Test things we shouldn't proxy to ES

These are requests that could be destructive to either individual indexes or
the overall operation of Elasticsearch. Kibana will never make these
requests, so we shouldn't proxy them.
Move ES request proxying to helper

I intend to break the routes for Elasticsearch apart in a following commit
so I'll need to call this same functionality in several places. This still
uses `request` and `params` from the top-scope, but I think that's OK.
Replace params[:captures] with path_info

This gives us the same value - which is the path of the route always without
the `/kibana` prefix of where the rack app is mounted to - without relying
on regexes for routes.

It's worth noting that this isn't tested by the specs which start the rack
app on `/`. I'm not sure how it could be tested.
Replace ES route regex with individual routes

This should make them easier to read and less error prone. We can now easily
compare them to this example:

https://github.com/elasticsearch/kibana/blob/v3.1.0/sample/nginx.conf#L24-43
Proxy temporary and permanent dashboards to ES

Allow temporary and permanent dashboards to be saved and loaded from
Elasticsearch. These routes are a combination of my own testing and this
example:

https://github.com/elasticsearch/kibana/blob/v3.1.0/sample/nginx.conf#L46-63

The index name is validated against the `Kibana.kibana_index` name to
prevent access to anything other than Kibana's internal index. This will
continue to work when changed from the default of `kibana-int`. As
demonstrated by the additional tests.
Proxy bodies for PUT requests

Saving a temporary dashboard to Elasticsearch uses a PUT request with a JSON
body. So we should proxy these bodies in the same way we do POST requests.

The test has also been modified to deal with PUT bodies, by always taking
`body` from the `options` hash in precedence over `params`. I think this is
slightly easier to read than switching on `request_method`.