Updated / added test cases for aborting the parser
Better handling on upgraded connections

Firstly a upgrade connection should not increase the number of bytes read by 1 if the message is completed.

Secondly an upgraded connection that has no extra bytes past the headers should not fail.
Merge pull request #41 from robertjpayne/master

Better handling of upgraded connections