implemented EnumSet

fixes #5