What do you think of the idea of enums acquiring successor() and predecessor() functions and the ability to use them in Ranges? enum Char { case A, B, C, D, E, F } let a = Char.A a.successor() // Char.B (Char.A ... Char.D) // Range Char.A -> Char.D