Support whitespace in paths for ADD and COPY

This PR takes on @seongyeol37 work on supporting whitespace in paths for `ADD` and `COPY` Dockerfile instructions. It reverts an unrelated commit submitted as part of #8406, and adds tests and documentations for the new features.

Fixes #8318.
Replaces #8406.
That's part of the cherry-picked commit. It's all tabs, but honestly we don't care it's just a test data file.