Fix HTTP::Request::Receive and other things

Somewhere along the way I stopped tokenising the request line properly
and it ended up reading the first three lines instead of space seperated tokens :S

HTTP::Request has some validity checking now.
Things return false if the request doesn't make sense, etc.

Also added comments.

New examples: proxy just forwards TCP and httpproxy does HTTP validity checking first