Improve the exception if the command-line is slightly wrong

This allows us to distinguish between: a parameter not being
registered (which means a missing definition in the code) vs
a parameter not being provided (which means a caller error)

Signed-off-by: David Scott <dave.scott@eu.citrix.com>