Let dynamic objects have null behavior

A dynamic object can now have null behavior, instead of having to
specify a no-op function. This means that we can skip validating a
behavior function when it wouldn't do anything anyway. This
significantly speeds up level 16 (pointers).