post-initial commit, with many changes