is_minor_version now calculated on save

"this" version is minor if `json` matches the last saved version...

if "this" version is minor, we don't mark prior versions as minor.
if "this" version is not minor, we carry on exactly as before.