- Improved error messages
- Improved usage of primitive types: use `:string` instead of `:type_string`, and  more generally, remove the `type_`
  prefix
- Fixed an error when an object is defined with an attribute named `type`.