some sanity checks, also switch to explicit viewport syncing

implicit had a lot of problems i'm hoping i can address with this.
means more network traffic but whatever. it now means that we are guaranteed
to be on the same exact page. whereas before we wer emore or less hoping
we were aligned to the same viewport, and destroy the same entities..
i don't like that possibility for non-determinism, i can think
of some cases where it might screw up. in theory, maybe.