Replace distutils.dir_util by shutil

Using distutils in runtime code is not a good idea. distutils.dir_util
writes a verbose log and causes test cases that are being run via
'setup.py test' to create a lot of unneeded log output that can not be
suppressed easily. shutil.copytree and shutil.rmtree do the same as
the functions in distutills.dir_util without producing any log output.