I feel your pain and sympathize.
To explain what I'm doing in my Feb 18 post, I'm actually upgrading to plone 5.2.2, but I'm doing a very sloppy upgrade. I don't even run upgrade steps. My plone install always says that I need to run an upgrade step, and that step isn't even developed yet.
I am pointing my buildout to go get the source of Products.CMFPlone from master on github. This is the development branch of Plone. This can change daily as new features of 5.2.2 are merged in and added. It's not an official release of plone.
Along with CMFPlone, I get the source packages mockup, plone.staticresources and plone.outputfilters because they also provide the functionality to get captioned images working. Again, development branch, not official releases.
So, if you REALLY want to get image captioning working TODAY, in the safest way possible, follow the upgrade path to 5.2.1, then update your buildout.cfg by adding the [source] section I have above. I am extending off of 5.2.1 so you at least have to be there.
There have been a lot of packages updated between 5.1 and 5.2.
If you don't upgrade to 5.2.1, you will certainly run into problems. And fixing those problems is doing the same work that upgrading does. And even if you get that working, don't expect to ever, ever cleanly upgrade your install ever again to 5.2.3 or beyond.
I'm confident in my steps because once 5.2.2 is released, I can remove my sources list and just extend plone 5.2.2 - hopefully. The development branch (master) should be very close, if not identical, to the 5.2.2 release at that point. If not, I'll be filing bugs against 5.2.2
Remember, Plone is, at it's heart, a list of many, many python packages pinned to specific versions. if a bug or feature is fixed in any one of those dozens / hundreds of packages, a whole new plone version must be released. The version number just comes from the tag put on Products.CMFPlone - but that's just one piece.
@esteele When is 5.2.2 scheduled for release?