Added settings.setup  so you can solve to a mixed state.
Move refactoring. There should be tests...
Renamed and dryed up the changer classes.