Cleanup of redundancy code

This commit begins the process of separating out and cleaning up the redundancy code. All unit tests pass after commit.

Obviously, this isn't a large commit, but, I'll keep following up on it with bits and pieces and whip the class into shape!

Let's get this Code Climate GPA up!