Simplified the implementation of Enum.Next and added Enum.Previous