A visitor that calculates a deep hash code for a node by using the hash codes of all its properties, and the hash codes of all its child nodes (by visiting those too.)