Make the Goliath adapter compatible with goliath-1.0.4

This commit that went into goliath-1.0.4 broke our adapter:

https://github.com/postrank-labs/goliath/commit/5a375c18f3f8351eb45939c3735813dee620557f

The adapter works by handing off incoming data to Goliath, and then
asking if it's a WebSocket request by calling
Faye::WebSocket::Adapter#websocket?, which in turn calls
Goliath::API#env. That method looks up an env that was stashed in
Thread.current.

Before the above commit, env was stashed in Thread.current inside the
HTTP parsing hooks in Goliath::Connection. Now, it's stored inside
Goliath::API#call, which executes inside a fiber. So, when we pop back
out to our adapter to inspect the request, we can't see the same Thread
variables.

This patches the problem by storing the env as an instance variable in
Goliath::API when API#call is called.