Added private no-args constructors to prevent accidental init.