mostly refactored
refactoring coming together
more refactoring, all compiles