Enhance Sprig-Reap's Abilities to Handle Polymorphism

Sprig-Reap was unable to properly identify dependencies and polymorphic-associated classes.  This PR adds some additional intelligence around that logic.

Eli and I paired on this stuff.  We also cleaned up small things here and there.
Yeah, there's probably a little too much mocking/stubbing in here.  I'll re-work it so I'm using some of the test models we have defined via fixtures.