#18 Using HTTP HEAD instead of GET

Addressing #18 

Also abstracted the request logic to allow for removing the ``HttpRequest`` lib in the future. 

Could expose this to client to allow for custom requests.
hostname is like "google" or "android" or "novoda". Endpoint is like "android.com/test". DomainName is "android.com"? I would have thought any endpoint would work for a head request even though at the moment you are using "android.com"

It's not public api as I thought before so not as important tbh