limit responsibilities of determineMethods to tags, no type eval; use new ApplicableTo method
rename to evaluateTags