+htp #15922 import FileAndResourceDirectives from spray

Based on #16183 + #16195. So, please review just the last commit. I will rebase once the other PRs are merged.

Fixes #15922.

/cc @sirthias @hseeberger
It warns not only for `()` but for any other tuple adaptations as well. All of those usages are part of the API so if we adapt the tests we are only cheating around the issue. Why enable the warnings if they don't help? 

If we care for warnings we need to switch to 2.11 and then also have a policy that warnings need to be dealt with (which I started to do with these commits).