Re #8483. Add forward declaration after removal of include.
Re #8483. While I'm there, thoroughly clean includes.
Re #8483. Add now-required include.

After I removed its inclusion further up the chain.
Re #8483. Add forward declarations.

Previously they were being picked up via some other header that I've
now cleaned.