Greatly improve the handling of the temporary cruft

rspec-puppet needs a whole pile of crap in order to run.  This isn't cool,
but normally I'd just ship it in the repo and be done with it.  Except...
guard *completely* refuses to watch anything in a directory pointed to by a
symlink in the watched tree.  So we need to recreate those symlinks before
each rspec run, and remove them after each rspec run.  At this point, it
becomes worthwhile just to do everything in rspec before/after hooks and be
done with it.