Add support for collections

The collection provides support for meta data in the response (timed_out,
facets, etc) while delegating all array methods to the response.

Signed-off-by: Tyler Smalley <tylersmalley@me.com>