Support override of request module.
Pass querystring as url.format() compatible object.
Move req.pathAppend() to utils.pathAppend().
Fixes tests and adds options.path in request.
Reduce some redundancy.
Merge pull request #16 from TerraEclipse/refactor

Allow request module override