fs: refactor and improve `cpSync`
I've refactored the existing implementation to reduce the fs.stat
calls, and left multiple TODOs that will improve the performance of cpSync
on several paths.
I think this might be a good place for new contributors who are interested in improving the performance of Node.js
cc @nodejs/performance @nodejs/fs