Remove Unix specific behaviour from File.cp/3 and File.cr_r/3

Previously those functions would behave as in their Unix counterpart
where copying behaved differently depending if the destination was
an existing directory or not. We have explicitly disallowed this
behaviour and added the proper notes to the docs.

Closes #2024.