It is important to keep the cluster nodes in a canonical notation that is provided by a single function, which also works for multiple protocols (including UDP and other potential future protocols).
does the dynamic peer parameter ever clean itself up based on some inactivity timer?
Yes, there is a heart beat (default every 20s) checking for the liveliness of potentially silent nodes. In the latest version, one can configure this interval via the kernel parameter "ClusterHeartbeatInterval". Also, i've updated the cluster node status page to make it more self-explanatory.