Added exception class and Mac-spec FileStamp.

OSX can’t use std::exception as is, so we must derive a class from it
that exposes the exception string.
Also added Mac specific support in the FileStamp.