May be a general "Angle" class would be more useful?  It could do the normalization, store everything in rad internally, and provide different representations as needed via methods.  I have an Angle class celnav but it is a bit bloated.  Will check if I can trim it down and add as an option.