Fixes a deadlock where the allocwatcher would block forever waiting for an update from a terminal alloc. Made the broadcaster easier to debug as well.
Also remove initial alloc from broadcaster as it just caused useless extra processing.
And test thoroughly.