Update CHANGELOG
Tweak tox.ini

This makes it a little clearer, albeit not intensely so.
Fix tests to not use docstring as name

Courtesy of AndyM.
Restrict elasticsearch-py to specific versions

elasticsearch-py 1.0 made a bunch of changes we're not going to support
with ElasticUtils 0.9. We'll support them in the next version.
Fix test failures

A bunch of tests would occasionally fail because the filter and query
portions of the Elasticsearch query are generated from dicts which
get turned into lists and thus we don't know what order they come in.
Thus two equivalent lists could be in different orders, but we consider
them "the same" because we don't really care about the order. Hence our
new compare function: "eqish_".

The other way to solve this is to use ordered dicts which keep things in
the order you add them. At some point, it might make sense to change it
but for now I'll just deal with this in the tests.
Update CHANGELOG regarding supported things
Switch .all() to .everything()

* switch the old .all() to .everything()
* change .all() to be more like what Django ModelManager/QuerySet does

Fixes #200
Ensure results cache is used even if there were no results
Do not set facet_filter if there is no filter.
Add test for case where filtered=True but no filters
Add missing CONTRIBUTORS

Some of them are new. Some contributed a while ago and I'm not sure how
I missed them. :(
Fix README and copyright dates
Change S._build_query() to S.build_search()

* make _build_query public (and change the name)
* add to_json utility function
* add tests for to_json
* add documentation for utility functions

Fixes #218
Fix docs regarding tense
Add note about _build_query() namechange to CHANGELOG