initial commit, including most plumbing, but bad UI