Use clearer(?) `reduce` block for setter
Enums can be specified as hashes
Update readme