CAS-1439: PGT and PT ids should begin with their assigned prefix

https://issues.jasig.org/browse/CAS-1439

This pull ~~fixes an inconsistency~~ proposes an improvement to allow proxy-granting ticket begin with their recommended prefix `PGT`, per the CAS protocol.

- A new `ProxyGrantingTicket` interface is introduced along with a default impl, both of which at this point are analogous to their TGT counterparts. The interface presents the correct prefix.
- CAS impl is modified to take advantage of the above design, when delegating authn.
- API signatures are changed to make visible and explicit the granting of a proxy granting ticket. 
- Definition of `equals()` had to be refactored and moved up to `AbstractTicket`, taking advantage of `EqualsBuilder` as well as `HashCodeBuilder` for consistency. 

Note: It's likely that we may also opt for a `ProxyTicket` interface as well, just so the language of the protocol would be explicit (per domain-driven-design guidelines) and possibly, address and improve issues with PT expiration policies. (i.e. https://issues.jasig.org/browse/CAS-1440)