added .isUpper, .isLower and .hasUpper