ats: Intra-query result caching

Prevents a query from pulling the same data more than once from the server.
Can this class be immutable? If Name changes, GetHashCode will return a different value...