Set expiry on TopicsController#Show to be 5 mins

We need this to be 5 minutes to changes to the featured set will show up
reasonably quickly.

As part of this I've refactored the controller a bit to hide most of the
logic which only applies to HTML formats inside a conditional.
Moved set_cache_max_age out of before_filter
Remove unnecessary code

We don't need to skip the filter, we can simply rely on the controller
action overridding the expiry time and max age when required. Also
added an additional test to verify max age overrides scheduled edition
times.
Merge pull request #903 from alphagov/topics-expiry-time

Tweaked and merged: https://www.pivotaltracker.com/story/show/53342563

Set expiry on TopicsController#Show to be 5 mins