Use htmlpurifier where needed, refs #7699

Both static pages and institution custom headers are allowed to expose a
limited number of HTML tags (see details in the Redmine ticket).
We are using htmlpurifier, wrapped with a singleton for convenience.

The idea is to bypass the default escaping strategy in AtoM for these two
elements, while they are purified using htmlpurified. The purified output
is cached using QubitCache and invalidated whenever is necessary.

Still, the administrator has a chance to disable the purifier for full access
to rendering contents in the template, like <script> tags, etc... but it
requires CLI access. The setting is "htmlpurifier_enabled" in config/app.yml.