Enhance datatypes
This commit enhances the datatype classes on the following things:
* All datatypes that are MEIs are now also validated for their allowed ranges and values according to specs
* by default we validate as soon as we "build" such a value to make sure that invalid usages are tackled directly on test time ideally :-)
* This validation is skipped on tlv decoding because several requirements from matter require such semantic checks later in the process.
* places where we "misused" these types are adjusted
* ACL cluster needs an adjustment because we need to validate some types later in the process.