Moving away from an initializer to static methods on the module
(supports multiple entry points and an easier/shorter way to invoke)