Tests for Rulers App now specifies behavior, explicitly.

- extracted "get_template_contents" to ease overriding in tests (also makes class a little easier to read: SRP).
- split class definition for RulersAppTest in order to keep mock object definitions right next to the tests that use them (improve readability)
- renamed "to_underscore" to more accurate "to_snakecase"
- fixed test_helper, as we moved the library code under "lib"