HAMT-based persistent map implementation