feat(#23, #22): add support for custom config file path. minor refactors