EAGLESIX-2707 added test cases to better match the c++ tests.
EAGLESIX-2700 reviewed code and test cases.
Merge branch 'feature/mongo_2.6.5_expressions' into feature/mongo_2.6.5_expressions_And
EAGLESIX-2700 Fixed errors in AndExpression. Tests are complete and pass.  However, I don't like the result of the optimization. It is missing obvious trivial optimizations.
EAGLESIX-2700 Added a method to allow the optimizer to work much better. Improved test cases.
Merge branch 'feature/mongo_2.6.5_expressions' into feature/mongo_2.6.5_expressions_Add
Merge branch 'feature/mongo_2.6.5_expressions_And' into feature/mongo_2.6.5_expressions_Add
EAGLESIX-2707 Added the 'commutitive...' function to AddExpression. Added 'optimize' test cases. comment out test cases relating to dates which we do not support.
EAGLESIX-2701 merged in Add and Add