Merge branch 'issue3/business-logic-controller' into lemonade-stand

Closes #3
Closes #4
Fixes #1