Basic refactoring into new dedicated libraries
Refactored to drop two external library dependencies
Added help output