Rename Tree to Map, add a few new method