Handle write errors.

Since there is no effective and portable way to validate a path before
trying to write i decided to simply handle write errors instead.

Updated both Mover.move() and Mover.make_path() to handle IOError.