update implementation and roadmap
update tests now that insert_lines does the right thing with string input
properly check for an empty buffer and fix tests