[bug 765374] Fix num_votes filter

So... We had the filter code there, but didn't save the resulting
S. Thus, it had no effect. Oops!

This adds a test to verify that it has effect and fixes the offending
code.
bug 755726] Implement ES unified search results

This adds another search view which is accessible when elasticsearch
and esunified waffle flags are enabled.

This new view uses one S and thus all results are together sorted
by score rather than displayed in buckets.

This adds some basic tests--mostly the existing ES ones copied over
and put under the esunified=True flag.
[bug 755843] Add weights to unified search code

This adds the same weights we use for Sphinx to the ES unified search
results view code.

We'll iterate on the numbers after analysis is done.
[bug 759831] Make AAQ flow length more predictable
[bug 757028] Add daily calculation of contributor metrics.

New cron job that updates the number of contributors on a daily
basis. Graphing this in stockcharts, now we have the ability to see
daily, weekly and monthly groupings of the data.
[bug 759831] Update user message for new question
[bug 758604] Remove search field placeholder text
[bug 763764] Fix feature box on home for RTL langs
[Bug 754038] Update session time zone when user edits it in profile.
Fix search button wrapping on some systems
[bug 759965] Wiki parser handles redirects

Links to redirected articles use the redirect destionation article's URL
and title.
[bug 756765] Make Report Abuse button localizable
[bug 755923] RIP Sphinx

This removes all the Sphinx-related stuff.

You may need to do:

    git rm --cached vendors/src/oedipus vendor/src/sphinxapi

to remove the vendor git submodule stuff.
[bug 761127] Fix suggestions to work with ES

This rewrites it to use ES .search() code rather than whatever it was
using before. Also, the index layout has changed, so this updates
that, too.
Fix unified search filters

If a search adds filters on model Foo, but not on other models, then
what happens is that the Fs get combined and the resulting F requires
things that are only in model Foo and thus the search results only
have results from model Foo in them.

This fixes that by forcing the F to specify which model they filter on.
So when they get combined, we get filters like "if the model is Foo AND
this AND that" OR "if the model is Bar AND this AND that" ... which
alleviates the combination problem.
Fix forum filtering; optimizes on count

* forum has a u. oops.
* if we hit ES and it's all like, "d00d! there are no things!", then
  we know there are no things and we don't have to ask it a second
  time to return an empty list.
[bug 761575] Comprehensive tests for ES unified

This ports all the Sphinx tests we didn't have implemented for ES
to ES.

This also fixes three tests that were skipped in the Sphinx tests.
This fixes them for ES and fixes the test_discussion_filter_forum test
which had a subtle issue.
Nix two tests

These two tests were pulled over from test_sphinx and while they pass
in my dev environment, they don't pass on our CI system. I'm pretty
sure that our CI system is using an ES cluster with an older version
of ES which probably accounts for the disparity.

Regardless, bad input will cause our ES code to throw an exception
which will get caught in the search view and result in a
Search Unavailable message--not an ISE. I don't think these two tests
add anything useful.
[bug 765882] Only show canned reponses on forum
[Bug 767112] - Prevent race condition in canned responses