Refactor eight-track to use Connection classes for incoming/outgoing requests/responses and fs-store for interacting with storage abstraction

Merge branch 'master' into dev/breakdown.eight-track
Adding dev notes
Removed dev console.logs and updated last setImmediate piece
Fixed Travis CI again with `async.setImmediate`. This timing stuff is ridiculous.
Tweaked variable arrangement
Deleted dev console.logs and went back to newest async
By deferring the loaded event, everything works for 0.8. Yey
Moved to older async but still no luck
It looks like 0.8 and 0.10 have different behavior for interacting with `end` and `async`
Broke out get/set fs logic into its own file
Cleaning up dev console.logs and `handleConnection` size
Relocating conection creation made things happy
Encountering strange timeout issue with async
Moving to async but it feels like lipstick more than anything =(
Leaving another important TODO
Broke out connections classes into separate file
Staring at code to see room for thinner code
Completed refactor with tests passing
Made distinct classes for incoming and outgoing connections
Patched up refactor to a working state
Creating connection class and relocating all req/res pieces to it
Added TODO note for self
Making an important TODO
Moved to `tee` model for handling response
Tweaking connection model
Moved external request making to its own method
Relocated all request/response logic into instance method
Relocating EightTrack logic into standalone class
Moved from getting/saving responses to getting/saving connections
Updated test files to match new saves
Cleaning up excess data that we resolve
Adding additional info to responseInfo
Relocated info collection into class methods