All the cool kids have their own Enumeration implementation, most of which try to do so in the name of implementing exhaustive pattern matching.