Refactor BaseMatcher and ActualValue. No need to check for an array