Fix #974: Implement java.util.UUID.

Except `UUID.nameUUIDFromBytes`, because that relies on computing an MD5 or SHA-1 hash.
same