The pull request with all the code.

I have always been taught that you shouldn't have any public methods in a controller other than:
`:index`
`:new`
`:create`
`:show`
`:edit`
`:update`
`:destroy`