add documentation to BaseType, fix String class to imitate Java class behavior for compareTo() and compareToIgnoreCase()