single table source fix

added assertion to make sure no more than a single table source in plan
Cleaning up CreateTableAsRules

removing unused code(visit/enter/leave ExpressionNode) in
CreateTabeAsRules
CreateTableAsRules fix

Illegal plans are now reported in CreateTableAsRules, currently this is
any plan containing a MapJoin or SetPlanNode
Test added to yaml for this possibility
todo:add more illegal operator plan nodes