WIP: Second round of improvements to properties

This adds validation to remaining properties (e.g. `Dict`, `Either`, `Color`).