Cleanup controllers; add error messages

This PR cleans up the controllers to be more declarative and not reuse CRUD (`#show`) that don't really make sense. Also adds error messages:

![screen shot 2014-06-23 at 11 02 18 pm](https://cloud.githubusercontent.com/assets/47554/3367653/2154335c-fb65-11e3-8be2-43225378f947.png)