Redesign and UI improvements

In-progress redesign and various UI/UX improvements.
Talked about this in person. For posterity: Rails uses `Thing.primary_key` for associations. Views can't have primary keys, so it has to be set here or things like `some_thread_with_visited_status.posts` won't work.