If a previously created SCCM App is retained, allow an option to move it to another folder, and not keep it in the same folder as the latest version of that particular app.
This would a lot less "mess" in the folder with the latest version of each app.
Also, for the "retained" folder of the apps, one could set a security scope, so that only a specific set of people can deploy them.
This would also be very helpful to ensure that retained apps are not deployed accidentally.