Proposal for Query system

This is a proposal for a query language and implementation plan for it.  @cheddar and @jh-bate -- your comments would be appreciated.
Yours is fine -- but I didn't do it because that query is specific to the date you're querying -- by using Age() you can write a query that can be reused.