Context work

Context branch merged with latest master branch.   

This branch includes a hierarchal Context model that allows for scoping of variables and expression execution. 

Also contained in this branch are updates to the Query expressions to include support for Multisource queries, with and without, define, sorting, where and  return expressions.

Tuple support was also added to this branch to support the query return expressions and sorting along with a few other expressions such as AliasRef .