Detect object conflicts during deserialization.
Detect object conflicts during deserialization.

If two pre-compiled modules both tried to replace an object or STable
with their own updated view of it, the latest one would always just
win. This creates the "disappearing symbol" issue. This patch detects
that it's going on and complains, rather than leaving a weird failure
later on (the actual fix will be to replace the exception thrown with
a hook to allow the module loader to do some smarter merging).

Breaks no NQP tests or Rakudo spectests; does correctly pick up the
RT#112626 case.

cygx/nqp,cygx/nqp,cygx/nqp,cygx/nqp,cygx/nqp,cygx/nqp,cygx/nqp,cygx/nqp