Scalar value casting, with fine-grained control: cast a single property with `#[MapAsInt]`, `#[MapAsBool]`, `#[MapAsFloat]` or `#[MapAsString]`, or enable casting for one type everywhere with `allowCastingToInteger()` and friends.
Strictness stays untouched for everything else.