Code base refactoring and minor usability improvements
This release includes:
- Added check for non-empty output directory
- Log the directory being written to
- Moved goroutine pooling code into external library
- Other minor refactors
This release includes: