LMS-11357 Split revert_to_publish: correctly revert to Published version

https://openedx.atlassian.net/browse/LMS-11357

@dmitchell Please review

@cpennington FYI - `version_structure` now raises an Exception if the branch is not specified.  Otherwise, we inadvertently create a new structure for the None branch.
Oops. Sorry.  This was debug code that I accidentally left in.  I had added it to figure out which field was not equivalent.  The field comparison is, in fact, tested by the following line, so I am removing it and squashing.  Thanks!