Adds supports() to the AuthenticationMetaDataPopulator

Deals with https://github.com/Jasig/cas/issues/544
you shouldn't need this now if we have supports being called externally as part of the contract.

If we are going to double-call it there should be an abstract implementation that enforces this check that we can inherit from.