Alyssa noted that the fmap functionality is malformed; it won't properly fuse all the leafs of a given node if they're equal after being fmapped.

Consequently I've added a cleanup function called fuseZone that should work as a stopgap for the time being. I wonder if there is a more elegant solution...