Allow empty tuples.
Add support for wildcard types.

Currently these respresent only the type of the empty
list, and there is no parsing support for explicit
wildcards.
Initial commit. Support for binary operators and,or,not,equals,less_than, parsing and elab for set operators and tables. Some other misc stuff.
Elaboration and parsing for union and select by Art.
Changed parse_select due to change to parse_elem_list().
Fixed parsing for select (sort of). Fixed elab for union to assume list type. Fixed eval for union. Added is_same for record_types. Added is_same for Var terms because same_binary was returning false positives.
Fixed eval union to work correctly.
Added some test cases.
Corrected parsing of join slightly. Added empty elab_join function that still needs implementing. elab_select is broken due to broken elab_proj. Made minor changes to style problems.
Frank Obiaya - elab_intersect() and elab_except()
Fixed elab_intersect() and elab_except() to work with lists instead of tables. Completed eval_intersect() and eval_except(). Added test cases for both.
Completed elab and eval for record projection.
Completed elab and eval for col proj on table types.
Converted column projection to Mem term to be more flexible. If the term is a table then it does col, else it does regular Mem projection.
Elab for join.
Parser implementation for functions
Started evaluation for select.
Merge pull request #1 from artju01/master

Elab for join.
Completed eval select.
Parser for functions included lambda expressions