Added NumberRange types, refactored file structure