add functionality to perform "Delete By Query"

see documentation at http://www.elasticsearch.org/guide/reference/api/delete-by-query/

this handles #771 and #309 using the `source` param for the query.