Add Num and Enum classes.

This commit adds Num and Enum support. (There is no deriving for
Enum yet.) As a matter of convenience, Succ and Pred are *not*
exported from the Preludes, as these are very likely to conflict
with user code.

This fixes #63 and #70.
Rejigger names. Fixes #73.

As a consequence, the Tuples test no longer works, because tuple
names are wired-in and can only be declared in the correct module.

This commit also includes a test to make sure the names are where
they claim to be!