FIXED:
+ If re-using the same FileContents instance for several different files I was seeing trash from the previous file(s) in the string. ARGH!!! ifstream::read() silently converts newlines and breaks tellg() unless the file is opened in binary mode! WTF?! WHY?!?!

REMOVED:
- ditched Logger from the project. It wasn't being used and it's an unnecessary dependency.