Initial checkin, working, minimally tested.