So I've noticed that each time I upgrade the SEM agent (local or remote installer), the previous version remains listed in Programs & Features and the old registry key sometimes remains on the system.

Is there a reason the old version isn't be cleaned out during the upgrade process? On some machines I've seen 3 or more versions of the agent listed.