First cut of Query object
Merge pull request #52 from TomWHall/feature-query

First cut of Query object