CORE-6266 Refactored metadactyl.zoidberg.app-edit/update-app

Updated the update-app function so that app parameter values are removed from existing parameters before updating app groups and parameters from the client request.
This prevents a 'duplicate key' error when the client submits a parameter without an ID, but re-uses parameter arguments with IDs.
Removed redundant metadactyl.zoidberg.app-edit/delete-parameter-argument-orphans and metadactyl.persistence.app-metadata/remove-parameter-value-orphans functions, since all parameter values will be deleted and re-inserted on each update request, so there should never be orphans.
CORE-6274 Allow PUT /apps/:id to remove all params from an App group.
CORE-6275 Allow PUT /apps/:id to move param from one group to another.