this allows me to create a type without a `datatype` and then set and change the`datatype` on a bucket underneath the created type. we shouldn't do that because there is no creation invariant on bucket properties under any type, correct?