Unique identifiers

The new `cork_unique_id` type represents a unique identifier that is
visible at compile-time.  You can use these identifiers as keys for
extensible points in a plugin system, for instance; the identifiers
themselves will be unique within a given execution of the program, and
they'll each have a name associated with them to help produce useful
debug and error messages.