Fixed so shortcodes don't ignore other rules

Previous commit set $fail to false unconditionally.
This skips the built-in rule validation when the rule type is shortcode,
in favor of the added validation. This allows for the rules to combine
as they should.