Automatically derive ValueDefault for primitive value types (#5793)
### Description
This PR automatically derives `ValueDefault` for primitive value types.
This means that you can replace `Vc::<String>::empty()` with
`Default::default()`. The same goes for all primitive value types
(`bool`, `u8`, `()`, etc.). The underlying type's `Default`
implementation will be used.
### Testing Instructions
N/A
Closes WEB-1430