Add support for UUID version 1 to UUIDFactory

Also improved documentation and minor cleanup.

The UUID1 implementation is standardized and compatible with other implementations, such as [python's uuid.uuid()](https://docs.python.org/2/library/uuid.html#uuid.uuid1). 

@adamvoncorswant @fredrikbackstrom Please have a look.
Can we add some checks here? I mean, if the UUID is not of type 1 (eg not time-based), there is actually no time information to get here, and a returned result would be misleading.