Rationalize lock anotation in validation code
Make sure the annotation are set on declarations rather than implementations, and make sure there are lock assertions consistent with lock annotations.
Depends on D4592
Test Plan: Build with clang and ensure there are no warnings.
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D4581