initial checkin - very much a work in progress