Keeping track of which ports the user explicitly asked to be installed, as opposed to those installed only to fulfil dependencies, would be quite useful. It would be analogous to Gentoo's 'world'. With this information, we could do things like uninstall all the ports that are no longer required after uninstalling some other port.
It shouldn't be hard to store the information by adding a magic port name to the dep_map which depends on all the explicitly-installed ports. We'd then need code to figure out during install whether the port was explicitly asked for, and add the dep_map entry. We'd also need to change the dependents check in uninstall to not complain if the only dependent is the magic 'world' port.