Replace service filters with middleware

Protobuf 3.0 no provides a middleware pattern making it much easier to
extend the RPC service pipeline and not rely solely on service filters
which are brittle for certain operations.

With that in mind, replace the service filter that was added to handle
AR connection management with a middleware so it can't be short
circuited by other filters. Also add a middleware that enables query
caching so we get speed benefits that brings.
Use ensure to simplify middlewares

Instead of rescuing exceptions, running the respective clean up code and
re-raising exceptions, simply use an ensure statement instead.
Upgrade Protobuf dependency to 3.0+
Merge pull request #12 from liveh2o/ah/middleware

Replace service filters with middleware