Introduce message renderer

This new class replaces all existing server side message
rendering helpers and is the new global entry point for such
needs. All models with relevant fields now expose an instance
of MessageRenderer for those. MessageRenderer acts as
gateway between the existing processing solutions for markdown,
mentions and tags and provides a very flexible interface for
all output needs. This makes the API to obtain a message
in a certain format clear. As a result of centralizing the
processing a lot of duplication is eliminated. Centralizing
the message processing also makes it clear where to change
its behaviour, add new representations and what options
are already available.

Todo:

* [x] \(Re\)add a ton of specs
* [x] Verify there are no XSS issues.

      Review by somebody else would be much appreciated.
      Places to check
      * Profile bio
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
      * Profile location
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
      * Mobile posts
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
      * Mobile comments
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
      * HTML emails 
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
      * Atom feed
        * First check :heavy_check_mark: 
        * Second check :heavy_check_mark: 
* [x] Verify there are no major behavior breakages not covered by tests
* [x] <del>Verify mentioning still works as expected</del> We're currently incapable of generating plain links with full URLs, but that's out of scope of this PR.
* [x] Verify service posting still works as expected
       * No Markdown or HTML on Twitter :heavy_check_mark: 
       * No Markdown or HTML on Facebook :heavy_check_mark: 
       * Markdown posted to Tumblr (what about mentions?) :heavy_check_mark: 
       * HTML posted to Wordpress (no hovercard links for mentions) Didn't test since I haven't a setup for this, but given the everything else works as expected...
* [x] Verify title extraction still works as expected. Has improved actually.

I don't think all of these checks need to be done in this PR, most issues should be easy to fix with follow up PRs, after all that's the main reason for this new piece of infrastructure.

This should close #4683.