[bug 943464] Add reconciling to reindexing

Our existing reindexing code would update the index with db contents,
but it never checked the index to see if the index had documents in it
that weren't in the db.

This adds reconcilation code that removes things from the index that
shouldn't be there.

This also tweaks the admin page for index maintenance and adds an
outstanding records section making it easier to see what's going on and
also easier to see what happened.
|Bug 944344] Linkify usernames in deactivation log
[bug 944815] Fix unicode fail in escalate.
rebuild_kb twice a day instead of 4 times.
Move questions config things into config.py

from question_config.py and __init__.py.
[bug 936718] Implement infra for question statuses.

* Adds model manager to get questions with the following status:
** DONE
** RESPONDED
** NEEDS ATTENTION
** NEEDS INFO
** ESCALATED
* Adds helper to question model for setting and unsetting NEEDS_INFO.
[bug 939164] Fix product/topic edit form when one is missing.
Fix up qunit tests.

* Remove $(function()) wrapper. It isn't needed since the JS is added at
  the end of the HTML file.
* Fix a bunch of jshint problems.

Not all the tests were running. In particular, the browserdetect tests
weren't running. They are running now.
[Bug 915686] Make browserdetect.js understand fxos
[Bug 915686] The great showfor rewrite of 2013.

Rewrites showfor to be harder/better/faster/strong. More particularly,
data is pulled from the database instead of a config file, and the logic
is smarter to support more products. Less special cases and less
logic headaches!
Remove sourcemap error from jquery.
[bug 923732] Create a badge list page
[bug 889467] Nix verify_exists arg

The verify_exists arg was removed from URLField in Django 1.4. Using it
kicks up an error in Django 1.5, so I'm taking it out.
[bug 946321] Fix the /kb/new page.

The slug field was conflicting with the document form.
Fix some showfor macro calls.
Make "Customize this article" localizable.
[bug 946695] Products are inherited from the parent.
[bug 946695] Use document.get_products() instead of document.products.all().
[Bug 946267] Showfor: be less clever in the admin.

Trying to stop duplicate default versions kind of broke the UX of the
admin, and having multiple defaults for one product doesn't blow up. Not
even a little bit.

Additionally, apparently you can't have '.' in SlugFields. You can
insert dots into them via migrations though. So that's weird.
Fix casing of Get Involved string for consistency.