Helper function for creating test file
Functions for getting lines by index or number

These functions introduce a convention for refering to lines:
a line *index* starts from 0; a line *number* starts from 1 and can be
negative for counting lines from the bottom of the file.  Indices are
meant for programmers, while numbers are meant for users.
Check first.prev and last.next pointers in test
Gitignore binaries generated when testing