big commit; less wrong than the old one. this lets you have a look at what i have done.