CAS-1179: TGT Expiration Policy Evaluators

Introduced a parent abstract class `AbstractCasExpirationPolicy` for all expiration policies, which is to expose a few helper methods to allow real expiration policies to take advantage of the request object when evaluating a policy. The request object is useful when trying to determine if a policy should be applied against a remote connection address. 

Backed out all the other changes. There are no BC issues here.