added TreeMap class and tests