Minimize the ActionRegistrar effect on Engine.

Simplify ActionRegistrar from an interface to a defined type, and add
a standard method for populating it. Make most of the action methods
private, and adjust tests to match.
Make periodic test timing more parallel safe.

When we run a number of tests in parallel, the periodic test could
time out and fail. Increase the relevant timeframe from 2ms to 10ms.
Readjust the engine to use a helper to watch for rule updates.

Create engine.watcher, which watches for updates, and creates/destroys
"stoppable"s. This is only used to create/destroy rules, but will also
be used to create/destroy properties.
Ditch actionHelper method.

ActionRegistrar is now passed directly into FireActions by rules. This
changes initialization for the engine and rules a bit, and changes the
rule testing mock interface substantially.
Create Properties concept under the Engine.

Properties set a target value to any of a variety of values based on
an ordered list of condition.

Property support is not yet present in the Engine.
Enable Engine support for Properties.