* Added support for configuring google analytics
* Adding a configuration parameter 'ga_key' under DXR section
  will publish google analytics snippet in all templates
  this will require rebuilding the templates
* Renamed google analytics configuration key as 'google_analytics_key'
  from existing 'ga_key'
* Documented google_analytics_key in configuration.rst
  Fixes some issues with the last commit
* Added test to verify non-existance of google analytics snippet
* Added tests to check google analytics snippet
* remove the import of 'run'
Catch the right exception in test_build_failure. All unskipped tests now pass!

...assuming PR #334 is merged.
Rewrite search controller. Introduce proper REST API. Show error messages. Fix bug 956164 and 956919.

The search controller is no longer a spaghettified mess of reads and writes to a gigantic hash.

test_strings now passes. We're down to 1 failing test.

* We now have a publishable, reasonable REST API for searching, triggered by an Accept header of application/json. No more format= querystring param. Bad queries return a 400 so you can detect that easily.
* Show error messages for regexes that are malformed or unable to be accelerated.
* In the query machinery, tolerate queries that don't end up filtering anything. (ES would complain before.) Rather than showing "no results" for the query "df df df" (with all unsearchable bigrams), we show everything. Both alternatives are equally misleading and horrible and will be addressed in the Query Language Refresh.
* Fix bugs on error page wherein (1) part of the content would be hidden behind the search panel and (2) you couldn't do searches from them. (All the attrs of the div tag are necessary.)
Added unit test for refs kind getter
Factor out filter negation into a decorator.

I've written that 3 times so far, and I'm about to write it again.
Each reference type is optional
Stop ignoring file-scoped needles from plugins.

As a result, path (and everything else) ends up as an array, so we have to add a [0].
Add ext: filter. Fix bug 1030313.
In the clang plugin, rename refs_by_line to "refs" so it runs, and fix the resulting failures. Close #337.
Remove unneeded result= kwarg from error template call.
Merge search controller rewrite. Close #334.
refs no longer need to be unsparsed by line
Refs no longer need to be unsparsed by line. Closes #340

Merge remote-tracking branch 'origin/pr/340' into es
Merge ExtFilter. Close #338.
Fix CSV path construction so we actually find the CSVs.