This will make it easier to use the ProofPool structure to store the orphans. It makes the ProofPool a class, but the internal container is kept public to avoid bloating the diff with more changes. Accessors can be added as needed later to make it private. There is no change in behavior.
Ref T1854.
Depends on D10582.