Refactor tests cases to improve coverage. Fixes some bugs found along the way.

* More complete test cases, coverage, and linting. 729c4ae
* Make path handling more resilient by accounting for the lack of trailing slashes. 31c0809
* When rewriting paths, hostname and port were inadvertently being ignored. 73dc6cc fixes that bug.
* The definition or protocol seems to be interpreted differently be different people. Normalize the trailing colon for protocols. 5b44ff0
* Unref the stats timer to allow the process to exit. 9c44ce8
* Update .gitignore to disregard coverage files. 59f5614
* Update DELETE operations to correctly proxy payloads by using the "stream" payload. 40da68c
* Fixes a bug wherein if there was only one registry and the response was a 404, the request would not be fulfilled correctly. b4ad750