Fixed UnloadCargo stacking using new subcell API exposure

Partially supersedes #6083, Cargo.SpawnPassengers will have to wait for my Exit refactoring and discussion on how unloading while being sold should be handled.
Could you please merge `public Move(CPos destination, WRange nearEnough)` into this?