XR: make ENQUEUE-TD-DELETION always take a berth and timestamp
- #44 (closed) has some weird sequence that doesn't make any sense to me. Let's attempt to fix this by making sure that we don't ever fake cancellation messages: instead, we should just insert them with the originally given timestamp.
- That way, if we do get a cancel and then an interpose, it shouldn't be a problem -- the interpose, if it has a timestamp greater than the cancel, should either cause the cancel to be ignored or delete it (using the already-established mechanisms for when two things have the same universal time).
- Maybe this will result in a fix for #44 (closed)? I don't quite understand what's going on there.
- (We also never try to rescue a train into itself in non-SMART areas, and do some other minor tweaks.)