Added working implementation of HttpRequest.

For some reason it doesn't seem to want to merge, checking this out...