[bug 773017] Tweak the l10n dashboard queries.

* Exclude redirects in the overview section
* Include translations without approved revisions in the Untranslated section
[Bug 850215] Safe email translation.

I made a decorator that calls a function, and catches any errors that
might be localization issues. If one of these types of exceptions is
raised, it logs the request and sets the locale to English and tries
again. Then I found all the places where @willkg's `uselocale` context
manager was being used and converted it to a function that used this
decorator. In my testing this makes emails robust to localization
errors.

I tried to make this a modification to the context manager originally,
but to run the wrapped code again would require ugly bad horrible
bytecode hacks. So I decided better not do that. Luckily, this was is
generic enough that it might be reusable for web traffic too. I didn't
look into this very much.

I tried to log these errors in a way that will make them easy to work
on. I am assuming that we have Sentry/Raven configured to automatically
add stack traces. If this assumption is wrong, we can add the stack
trace into the error message later. There is a test that verifies that
logging does indeed happen.

Fix tests, move inline functions out of loops.

Move things around, test logging.

* Move translation functions out of loops
* Move locale selection closer to where it gets used.
* Test that logging actually happens.
[bug 855424] Add jqueryui back to private messaging and kb edit pages.
[bug 855424] Add jqueryui back to forums and kbforums
Add simplejson

This is required by pyelasticsearch.
[bug 831005] Update to elasticutils master tip

* add document_id to index
* update to elasticutils master tip -- this picks up pyelasticsearch
  and ditches pyes
* nix get_indexing_es (it was dumb)
* remove bunch of now-unused settings (also dumb)
* tweak test scaffolding -- this should make tests run faster
  for kitsune in a VM and on slower machines
* clean up docs

Note: This doesn't remove pyes. For the purposes of making this easier
to review, that'll get done in a future commit.

Note: This adds a new field to the mapping, but it's only used in indexing
and it's obviously a string. Thus it's ok for ES to infer what it is
and we don't have to do the "change the mapping" two-step dance.
Handle unpickleable exceptions in indexing tasks
Add note about git@ urls
Upgrade jQueryUI, merge all jQueryUI bundles.

* Fix KBox z-index conflict.
* Update CSS for active tab in advanced search.
* Update JS for selecting a tab in advanced search.
[Bug 823891] Recent revision list with filtering.

This can be filtered by user, locale, and by date. It uses a fragment
loader to change the filtered data without reloading.