Fix regression 13393.

Caused by .save failing to save entire state, causing inconsistency in
.save'd objects.
Simplify unittest.
Merge pull request #2473 from quickfur/issue13393

Fix regression 13393: cartesianProduct + joiner = runtime assertion failure