Removes duplicate from Gemfile and arranges groups

There were duplicate entries in the Gemfile that were causing warnings.
The duplicates were removed and the gems were placed in their correct
groups.
Adds basic test coverage for controllers

This adds basic test coverage (happy path and other simple examples)
for the controllers.  It also removes a bunch of unused code where
appropriate.