WINDUP-133: Refactor much of the BlackList/Classification functioanlity to use the more traditional graph/rule interaction. (Needs more work)

This is a preliminary PR for discussion purposes since I'll be on Vacation for a week. There is still a failing test (HintsClassificationsTest.java) Consequently, that is also where you should start to look at this to see what I've changed.
I am somewhat worried about performance... but for now I'd like to try to be consistent and find ways to optimize it later.