mojo goes into great detail about copying, moving when passing function arguments, however, I can't find how the function return is handled, is it copied? Or is it moved?