GOAWAY session unit tests and bugfix.

The stream id gets reset to 0, so can't use that as the key for removing
a stream. We'll use protocol instead, since these are all local requests
and that isn't mutated by reset.