externalized server startup and clustering into their own components via npm