Drop dependence on `touch`
This drops GHC's dependence on the touch program, instead implementing
it within GHC. This eliminates an external dependency and means that we
have one fewer program to keep track of in the configure script and Hadrian.
Closes #23646 (closed).
Edited by Ben Gamari