Fixed HTTP request parse failing if the URI was too short.
Fixed HTTP parser not converting POST/GET data to lowercase before storing it, making post and get data which contained capitals impossible to access.
Both fr::TcpSocket and fr::SSLSocket can have timeouts specified when connecting. This works by putting the socket into non-blocking mode, making a connect, and then selecting on the socket for the requested timeout. If the select times out then we've failed to connect, if it didn't time out then we've connected.
Receiving an http request/response will now return errors like HttpHeaderTooBig, instead of the type being set to that.
Added fr::Socket::status_to_string for converting status values into English strings.
Started work on tests for fr::HttpRequest.
Fixed the final POST data variable containing header data it shouldn't (\r\n\r\n).
Fixed fr::Http::header_exists, and family, not converting things to lowercase first.