refactor: Remove unused validation includes
Summary:
Unused includes will cause needless recompilation when headers are changed. Also, they pretend there are dependencies that don't exist.
Fix both by removing them.
This is a backport of core#23044
Notes:
- the CScriptCheck forward declaration is needed by Bitcoin ABC, because the CheckScriptInputs function is declared in validation.h rather than validation.cpp
- I removed also two unused includes in validation.cpp flagged by my IDE
Test Plan: ninja all check-all bitcoin-fuzzers bench-bitcoin
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D12697