Refactor the eval closure so we can use it in other places
Refactor eval handling

The plumbing now accepts a callback that gets to alter the response data
before it's sent back to the browser
getvar functionality now handles perl special variables

@_ is emulated by using caller()'s side effect in the DB package

Other vars are emulated by doing eval - it's not perfect due to
local()