Just code cleanup for ValueObject constructors:
- Use default member initializers where possible.
- Doxygenify the comments for membersa nd constructors where needed.
- Delete the default constructor which isn't defined.
- Initialize the bitfields via a utility struct instead of doing this in the different constructors.
I guess another option would be wrapping the bitfield in a struct and doing that it ints default ctor?