Move persistence interfaces to persistence layer.
Replace factory with more tasteful subclass.
Grossly abuse ninject.