dependency injection pattern for entrypoint file
change arguments to an array that is applied to the exports function
restructure the README
update README to reflect API and don't automatically pass the client to module.exports
update version for new API