Fix for concurrent append in VanillaIndexCache

Concurrent access to the append method was causing
a buffer overflow failure because the position was being
incremented by another thread after the check for end of file.
Unit tests for VanillaTailer reading across cycles

- Demonstrates some failures when using
  the tailer to read across cycles