Refactor display of current/completed exercises

* Use tables instead of `ul`'s for display of completed exercises.
* Add "View someone else's solution to this exercise" link to the completed
  exercise page (to replace gallery links).
* Create "Profile" presenter to clean up view code for account and user
  pages.

Closes #1151