- Refactor `Directory.copy()` to use a struct for arguments,
improving readability and maintainability.
- Add comprehensive error handling to `Directory.copy()`,
preventing unexpected failures and providing informative error
messages. This includes handling cases where the source is not
a directory, or a source and destination path are the same.
- Implement recursive copying of directory contents, including files
and symlinks.
- Add unit tests to cover the new `copy` functionality and error
handling.
- Update `OurDBVFS.copy()` to utilize the improved `Directory.copy()`
method and add input validation.