Front page index and subforum view redesign

@jollysonali and I paired on this.
In fact, most of the functions in this file should be wrapped in `(html)`