Add support for requesting just the _id and _type of each hit.

Currently, you can only specify at least one field to be
returned, or the whole document.  There is no way to request
that no fields be returned.

Closes issue #26
I like this idea, but we need a way to specify that the entire source document for each hit should be returned and a way to specify that no fields at all should be returned.  Currently, setting self._fields to [] causes the field clause to be omitted from the request completely, which accomplishes the former.  I proposed adding a way to set self._fields =  None to enable actually requesting that fields be set to [] to request no fields be returned.  

If we didn't mind making backwards incompatible changes though, we could change the method definition to something simple like:
```def fields(self, fields=None):
    self._fields=fields```
and change the interpretation of self._fields to omit that clause from the request if self._fields is None, otherwise just set it to whatever list is in self._fields.

So self.fields() and self.fields(None) would  both cause the entire document to be returned, and self.fields([]) would cause no fields to be returned.