Fix capitalization.
Make clone return values from copyFunc.

This makes it so if copyFunc returns a promise, that promise will
influence the outcome of clone's promise. It also makes clone's promise
wait for all the copyFuncs to finish.