Don't crash on python -OO, where docstrings are None. Fix #88.

Add nose to tests_require so we can skip tests in python 2.6.
Standardize tests on pep_8_underscore_spelling, like the rest of the library.
Dodge spurious atexit error after running tests.
Switch to all the shorter nose assert helpers and the nose collector.

We'll be able to support non-class-based tests now.
Bring changelog up to date.
Revise delete_by_query().

* Support multiple indices and doctypes.
* Support passing a string query as the ``query`` arg. Since this is a required arg, we should act like the search() method, taking body string and JSON queries. Passing the ``q`` kwarg explicitly is now deprecated.
Stop doing string interpolation at every request, regardless of log level.
Avoid quoting `None` as a string in path segments.

Leading to all calls to `es.index` without an explicit id to use the same
id of `u'None'` and thus override the same document.
fix docstring to include special `None` case
Tweak '' comparison to be clearer. No behavior changes.
Update readme for 0.4.1.
Fix mistaken stringification of "None" in `index()` calls that omit `id`. Fix #90.
Correct the count() docs to make `index` and `doc_type` args optional. Fix #91.
Merge pull request #1 from rhec/master

latest from upstream