If a constructor is only called once inside a closure that no one sees, does it really exist? What is the sound of one hand clapping? :)

If there are multiple versions of a thing, constructors definitely make sense. There is not a clear story for that now, this is a well known location to coordinate multiple card model data. However, if you feel more comfortable knowing a constructor is possible, then I can see just exposing an instance of the constructor as the module export, but I would shy away from a pattern of having a constructor with an instance of it hanging off the constructor function.