Debug UI for object counts.

Changed Font::Create() to use Platform to load instead of State to make
text rendering with the default font possible outside a State.

Contains refactoring to make sdl::State's members private, moving
towards separating SDL from main() and operating by interface.