Improved handling of stream closure during response

Each response state receives it's own strategy for dealing with
stream close mid state.  In particular, data and state end hooks
must be called to allow the host application to account for data
consumed by libhtp.