requires RequestHandler
use implicit block captures

this helps avoid unnecessary Proc creation where we can
use implicit block capture and RequestHandler classes

- avoids unnessary Proc creation where we can
- Wraps request blocks in RequestHandler classes to improve DSL
  - We're passing rack `env` into request blocks now to provide access
    to rack's env, request, and request params
create head request handler when get request handler is defined

and adds more specs and clarifies variable names
use new method name
wrap test data methods in module & mix into test stack
RequestHandler wraps request() blocks for fun/profit

let's us provide some nice DSL methods, including access to rack's env,
params and request data
code climate token encrypted