Add support to ObjectProperty for @NonNull annotations and invoking constructors
The first is easy, we just make a
@NonNull annotation that is an attribute. If it's present the ObjectProperty performs a nullability check and throws an exception. There's no need to contaminate the generated source code with those checks.
The next task would require a bit more work because we'd need to define an API to specify the types and constant values of the constructor, which might not then be available.