Rcparam validation fix

Fixes an imaginary bug, a real bug, and a bug discovered while fixing the real bug.

This should get tests before it gets merged.
Time for some factorisation? This is class is exactly the same as the float version, except for the ``float``/``int`` right?