Updating build, main module name, adding clean to Makefile.
Reorganizing to make Dsl more generic.

This allows Ord instances for things that use the Dsl,
as we will need to this to store arbitrary Dsl's for
record keeping (i.e., which expressions didn't behave
the way we expected).