Enhance UsernameLengthException

Added type constants, factory methods, and custom message construction.