Changing constructors to be more safe when not used with the new keyword