removed a nasty bug from equals of ConstructorType. There were two ways of not having keyword parameters: null map and empty map, leading to two different instances of the same type while we assume maximal sharing everywhere