Made Trigger friendlier towards inheritance

Specifically:
 * Made update bits constants protected so that derived classes can
   use them - especially NextFreeMask! IIRC, most classes make these
   constants public, though there's no real reason to.
 * Made potentialEnterObject virtual so that derived classes can
   substitute their own logic.