Add DemoFactory.
Fix headers.
Clean up method names.