Improvements to the ValueObjectPrinter to behave correctly in more dynamic value cases