Refactor some work to make child classes more configuration than code