Bastion: using gettext rather than i18n filter.

This change uses an external library to extract strings into
gettext format for translation.  Once the files are translated
the library "compiles" the translated strings into a JS translations
file for replacement by angular in the application.