SearchBuilder & Aggregates 

Took a lot of the logic from SearchResults and put it into Search, a builder object for constructing queries. Also added basic aggregate functions, going to add in range aggregate builder/sugar methods too.