Marked lots of things with FIXME, TODO and XXX depending on how hard I ground me teeth when coding.
Compare with the AstroPay adapter, there are lots of opportunities for encapsulating shared functionality. This work doesn't block the PayPal EC campaign, but should be done in Q1 at the latest, because it may destabilize DonationInterface.