Essentially this is currently single threaded and really can't use di because of all the inline ctor deps Actions: - [ ] Find all constructors where classes inherit interfaces that are created dynamically make the initialised with method on interface not ctor. - [ ] Change where all documents are signed to a signing provider so it all uses the configuration of what hash type etc.. - [ ] Classes like Saml20Metadata, Saml20AuthNRequest, etc.. remove the constructors as this is a stupid way of doing shit and its all over the shop