Function definitions are now a map instead of a seq in the Program node
Added imports to Program and Component nodes
Duplicate function definitions and imports are now checked at parse time (instead of during semantic analysis)
Upgraded to ScalaTest 2.0 to make Marc's test cases compile (and fixed the resulting deprecation warnings)
Changed the naming for test cases to something more sensible
Improved parser test cases