Add support for HHVM

Addresses #18 

It removes the constants and returns them in the method. We loose the ability to do "MyGrant::GRANT_TYPE", however.