more editing features, tests, docs