Craig and I are in the middle of a refactoring of the ServiceProvider framework in the "connect" branch of the Spring Social repository, as a last step towards the M2 release. Would be interested in your thoughts/comments. Our focus in this branch has been on providing a better separation of concerns, support for OAuth1 and OAuth2, and making it as easy as possible for ServiceProvider implementors. We've also been conservative in what we expose in the public API.
Core Spring Development Team