Empty lines (lines ending with newline immediately) were generating
bogus "0"s as discussed in pkrumins#11.
The problem was caused by a careless use of + in `mergeBuffers`, which
resulted in creating a Buffer with string "0" instead of an empty one
with length 0 when an empty buffer was among the ones being merged.
mergeBuffers also had an undefined case for empty set of input buffers,
which has been fixed to always return a buffer with length 0.
This also makes the .lines getter code more readable by using a better
variable name and eliminating tabs from white space.