Add various enums and rational class