Why did you change the factory constructors to static methods?