Dependency inversion on BadgeFactory and BadgeProcessor