i18n support

Bring in internationalization to master.

* Add a language switcher
* Translate the FAQ
* Add handlers/hooks to switch languages
* Add translation/message files