Moduarize and prepare for publishing to npm