Refactored the module to export a class, which can now be invoked using `new SwarmGW()` Added a `putDirectory` function that walks a directory, finds all files recursively, and uploads them to swarm expecting a manifest hash in return.
Allow changing gateway and transport protocol