IWYU: Fix workaround mapping for std::hash
It is provided by `functional`, not `utility`. Fix the mapping added by commit 276d3c7a (IWYU: Add workaround mapping for std::hash, 2018-07-31). Also generalize the workaround from commit v3.12.0-rc1~39^2~1 (IWYU: Define a macro to tell code it is preprocessing for iwyu, 2018-05-25) to allow local builds to configure specific flags. This is needed because iwyu behaves differently in different environments.
Showing with 5 additions and 6 deletions