Wrap SAML MD generation in transaction as fallback
Wrap SAML MD generation in transaction as fallback

Transactions should be started before these methods are called. When
that occurs this additional transaction start is effectively a no-op.

As a fallback this should help prevent invalid state occuring when a
long running backend process changes the hierarchical state which this
function expects to be statically presented.

Closes #115.

ausaccessfed/saml-service,ausaccessfed/saml-service,ausaccessfed/saml-service,ausaccessfed/saml-service