rpatterson.listfile 0.1

All operations avoid iterating except when necessary. Operations that
force iteration over the whole file include len() and using negative
indexes. In order to avoid excess seeking, all list operations may
change the position of the underlying file object.