add hashes for types, instances of types, add new dict implementation