Removed debug statements.
Renamed compatible? to compatible-substitutions? and modified the way maps are accessed.
Message compatibility now checks substitution compatibility, as well as flagged node set compatibility.
Fixed query to have a restriction, so it doesn't default to (Isa ?x Entity).
arbitrary-instantiation ignores messages with empty substitutions for now. I'm not sure if we'll want to use these eventually, but they cause problems since they are compatible with all other messages received.