Went back to having the Dealer handle all input sanitisation.

card now accepts a byte value - the static method Hand.ConstructFromSanitisedInput
handles conversion from character values (TJQKA) to byte values.
Fixed valid hand regex - no longer accept invalid value of 1