Solr backend: run() kwargs are passed directly to search backend

This allows customization by subclasses and also fixes #888
by ensuring that the custom field list prepared by 
`ValuesQuerySet` and `ValuesListQuerySet` is actually used.
ElasticSearch backend: run() kwargs are passed directly to search backend

This allows customization by subclasses and also fixes #888
by ensuring that the custom field list prepared by 
`ValuesQuerySet` and `ValuesListQuerySet` is actually used.
Make sure DJANGO_CT and DJANGO_ID fields are not analyzed
Tests: skip Solr content extraction with old PySolr

Until pysolr 3.1.1 ships there's no point in running the Solr content
extraction tests because they'll fail:

https://github.com/toastdriven/pysolr/pull/104
Merge pull request #888 from acdha/888-solr-field-list-regression

Solr / ElasticSearch backends: restore run() kwargs handling

This fixes an earlier regression which did not break functionality but made `.values()` and `.values_list()` much less of an optimization than intended.

#925 will be a more comprehensive refactor but this is enough of a performance win to be worth including if a point release happens before #925 lands.
Tests: update pysolr requirement to 3.1.1

3.1.1 shipped a fix for a change in the Solr response format for the
content extraction handler
Tests: remove legacy targets

* Django 1.4 is no longer supported as per the documentation
* Travis: use Python 3.3 targets instead of 3.2