operations: Convert UserCherryPick to return structured errors
When an error happens (merge conflict, changes already applied, pre receveive, or target branch diverged), instead of returning the error embedded in the response, return a structured error with some relevant detail and context regarding what led to the error.
Changelog: changed