Are you trying to build a SP or an IdP? We've built both using a C
library, lasso[1], which has python bindings. Entrouvert is a french
company, backed by government grants, which produces open source
software for identity management. Plus facile si tu parle français
though.
If it is just a SP, you only really have to implement
AssertionConsumerService and SingleLogoutService, and be able to
initiate a SSO request to the IdP - its not masses of work,
particularly with lasso.
We've not hooked into a Shibboleth federation yet however, there may
be intricacies to their federation.
Cheers
Tom