Also updated based on feedback from athile: Fix broken Linux elif. Use boost:filesystem instead of mkdir for increased future portability. Break appart class definition and implementation.