Kjr/refactors

It's still not quite done, but I'm using this refactoring as a way to understand Pakyow.

Done:
- promote Topics to be a real class.
- refactor Category some more.
- do something about that Docs.load method. (move to class level Category method)

Still TODO:

It's 5 o'clock somewhere. Not sure 5am is what they meant... Opps.