Split up Validation errors
The specification does not handle all "Validation errors" the same and so it is a different if there is an "Tlv data parsing error" (invalid datatype or missing mandatory field) or if "just" the value is wrong or out of bounds.
To enhance the returned errors to be more like expected in Specs we split up the Validation Error cases and classes to differentiate between the relevant cases and return either an InvalidAction or a ConstraintError.