Added more doQuery flavours

- QueryResult should make it easier to add result validation
- single/results are convenient when only interested in 1 result or the list of results