Fix #974: Implement java.util.UUID.

Except `UUID.nameUUIDFromBytes`, because that relies on computing an MD5 or SHA-1 hash.
Harmony, and RFC 4122: http://tools.ietf.org/html/rfc4122#section-4.1.1