Protect the constructor againts being called without new