Separate simplification engine from the actual rules that are used.

This creates greater flexibility, I hope.