Refactor to use external dep.  Also add npmignore.