Fix regression 13393: cartesianProduct + joiner = runtime assertion failure

Fixes: https://issues.dlang.org/show_bug.cgi?id=13393

Caused by `.save` failing to save entire range state (it's missing `.empty`), causing inconsistency in `.save`d objects.