Fixed #19463 -- Add UUIDField

Added UUIDField. Not particularly complicated this one - no custom lookups or anything. Casts all values to `uuid.UUID` instances in python.

TODO:
- [x] More form field tests
- [x] Documentation

Squashed patch should be marked as fixing #19463.
This is definitely a valid issue, and does apply to this situation. There is a related issue that fields using `SubfieldBase` do not work as you might expect in `values()` calls. @akaariai and I have some ideas as to how to solve this and I am planning on working on it. Combining it with this patch though is likely to be confusing.