Add an 'exclude' option, fixing #31

As promised, I implemented the ``exclude`` option using ``shutil.copytree``'s ``ignore`` callback.
This can be shortened to `if self.exclude:`