New function `setup_package()` that works like `create()` but assumes an existing, not necessarily empty, directory

As discussed. `create()` calls `setup_package()` and now also deletes the created directory upon failure.

Fixes #627.