Enhance UsernameLengthException

Added type constants, factory methods, and custom message construction.
Refactor Username credential

Added equality method and converted asserts to public static guard methods.
Remove exception messages and add equality test
Update Composer, Travis, PHPUnit config
CS fixes
Merge pull request #3 from texdc/develop

Refactor Username, Update test/build configs