Siempre hay que documentar, el tema es que no siempre se puede indicar @return tan fácilmente, es un problema común cuando utilizas DI o Factory por eso la documentación inline si bien no es lo ideal es muy útil.
Y bueno, nota aparte que no puedo dejar pasar :P, porque Singleton, no debería usarse ni siquiera de ejemplo, y me sigue llamando la atención el esfuerzo en "cerrar" la clase cuando PHP tiene
Reflection.
Saludos.