migrate sample app to a more 'best practice' directory layout

This is a somewhat invasive change, but I feel like it provides a few benefits:

- it more closely follows the emerging "best practices" for angular app structure: [best practice google doc](https://docs.google.com/document/d/1XXMvReO8-Awi1EZXAXS4PzDzdNvV6pGcuaF4Q9821Es/pub)
- it shows how state management can be separated between modules
- because there are multiple modules, it can serve as fertile ground for even more complicated examples

Please let me know what you think, or how I can improve upon this design. This was created as more of a thought experiment of applying the patterns described in the wiki to my own project, so I may have missed something.