Placeables: Make sure text is always escaped

highlight_placeables() was assuming that parse_placeables() will always
detect placeables correctly and was outputting text not part of a
placeable unescaped, but this is not a safe assumption as
parse_placeables() can fail to detect some placeables and we might end
up with unesacaped HTML material.
Added missing submission type attribute

Bulk actions performed offline were missing a value for this attribute.
We're adding it for consistency and completeness. Includes data migration
code.

Pick note: When this commit was picked from Evernote fork it suffered some
changes, like replacing the migration with code in the upgrade system, and
thus increasing the build number.
Added ALLOWED_HOSTS to the template development settings
Make tipsy tooltips fully opaque
sorttable.js can perfectly deal with multiple thead rows

(assuming the first thead row contains the actual headers and the others contain non-sortable 'header' entries)
Use CSS selectors for even/odd row coloring in translation table

Conflicts:
	pootle/static/css/style.css
	pootle/static/js/editor.js
Under Windows, the "nl_langinfo" method is not available
Show spinner in the middle of edit row
Use try/except instead of checking the function existence
Simplified code, use `get_for_path()`

Conflicts:
	pootle/apps/pootle_translationproject/views.py
Retrieve common export view context in a reusable way

Conflicts:
	pootle/apps/pootle_translationproject/views.py
Cleanup: Remove unused import