Improve parsing of hex strings into Numeric properties.
Improve error messages a bit.

One of the downsides to the TypedField approach is that it is much more
difficult to determine what object in a deep hierarchy caused the error.

A common error is trying to construct an object from a value, when that
object does not define a 1-argument constructor. (Properties do, many
other classes do not.) This will at least cause the error message to
display what class was trying to be constructed.