Improvement to query delete for nested WhereNodes.
Improvement to query delete for nested WhereNodes.

(Rebased to the current branch and splitted to more commits by hynekcer.)
Some code from sbussetti's commit is omitted because not actual in this branch.

philchristensen/django-salesforce,hynekcer/django-salesforce,philchristensen/django-salesforce,chromakey/django-salesforce,philchristensen/django-salesforce,django-salesforce/django-salesforce,django-salesforce/django-salesforce,django-salesforce/django-salesforce,hynekcer/django-salesforce,chromakey/django-salesforce,chromakey/django-salesforce,hynekcer/django-salesforce