Move.php Classes MoveCross-filesystem moves are not atomic (copy then remove); re-running is idempotent.