We should consider then if we need to break this class up better if we're exposing all of these things for unit testing.