Additionally to renaming, it changes the functions definition so that they accept a pointer to pointer instead of returning a pointer to the new object.
It is mostly done to make it in line with other constructor functions in the module.
Closes #3748 (closed)