Add constraint checking to Property schema

Change-Id: Ibec4068a0497ca6ac1dd25decd27fa87585b18a3
Remove unneccessary Property constraints from unit tests

It doesn't really make a lot of sense to have constraints on the number of
keys in a Map Property, or on the allowed values in a List Property. In
both cases, we can and should define the Schema for each item. Neither is
used anywhere in the code, since the new Schema/Constraints do not allow
it, and SchemaTest.test_all_resource_schemata() tests that all existing
schemata are valid.

Change-Id: I24e11ec59c75ef770bf040ee8151bbe061f4a864