@dzucconi: Extract & open source halbone + minor cleanups

This extracts [halbone](https://github.com/artsy/halbone) the lib used to clean up HAL walking & model creation. It also adds some tests to the middleware lib.
Haha, that is true. I'm close to it though—I found out I had ARTSY_ID & ARTSY_SECRET set in my bash profile and I'm probably just not working around those missing env vars properly in integration tests.