Add propagation of constraints for initial facts.

Needs some tidy up.