refactor list_controller

- minor refactoring of actions 'category' and 'category_feed'
- fix defect in 'category' where check was for literal
  string 'uncategorized' instead of SiteSetting.uncategorized_name
- major refactoring on defined topic actions
Merge pull request #1057 from house9/list-controller-1

refactor list_controller