Intermediate commit. Not quite yet working, but most of the steps are in
place.