Why should the constructor be private? I'm not familiar with whether Gin will still be able to instantiate it.