#311 - Move some form logic out of controller and into a service