map class now has basic functionality