Merge aron edits

A bunch of work and clean up to
- abstract away some of the strategy magic
- reorganization