Re-organizing and cleaning up lib folder structure

I'm mostly just moving things around here...

![nowweregettinsomewhere](https://f.cloud.github.com/assets/489331/1123880/dee187e0-1af5-11e3-84c4-53a12469a0fa.gif)

I'm submitting it now separate from other incoming changes so that hopefully its not that disruptive to anyone else.

I've not changed any external APIs or namespaces, I'm just organizing our code base a bit better before adding in some new code for additional authentication modes.

I tested this via `test:commit` on multiple rubies, but let me know if you see any issues here.