Heavy refactoring of Codec/CodecDescriptor
Also lots of fixes and updates to UserpReader/writer
Updated the test cases, and serialization of type definitions is getting close
Completely redid the UserpType.equals() system, and now it "just works".
Fixed a bug in getBitLength for value of 0, and removed an unused function
Moved value-conversion code from UserpReader to ValRegister
Rearranged the CodecOverride system so it works more intuitively, debugged the type serialization, and wrote test cases for it
Updated the project file
recording leftover changes, before starting on next branch