The uncertainty distance is a positive floating number.
* Validate this while parsing/building/using the setter
* Add the error variant `Error::OutOfRangeUncertainty` and change
`Error::InvalidDistance` to `Error::InvalidUncertainty`
* Update the tests