more refactoring of specs....who does what and how is everyone related?