Preconditions to rules and one rule to rules them all 

Randori Refactor for the win
Work in progress using Validation