Fix the way we decide if hasNext is true or not in WALReader. Unit tests...

... for all classes.
Actually, never mind. Spoke to my colleagues and writing byte at a time is slower than doing extra memcopy. So its fine as is.