Add satisfiesRequirement to Requirement interface that all other requirements implement Instead of using instanceOf to see if each requirement is satisfied.