Significant changes. Made package more generic and added support for more config options.