Controller getting very [fat](http://codebetter.com/iancooper/2008/12/03/the-fat-controller/) now!

Would be good to refactor this IMHO.