Be explicit about behavior of null values in the YAML
The ASDF Standard doesn't specify behavior around null values, but the Python library currently strips out any object key whose value is null. Some users would prefer that keys with null values be preserved. Regardless of which behavior we settle on, we should consider adding language to the ASDF Standard that defines how nulls are to be treated.
This needs some careful thought. There are cases where the absence of something should be taken to imply a certain mode. We probably have been misusing None. Getting rid of defaults probably makes this easier (e.g, a distinction between a missing attribute, which is handled by the tag code, and a None value which is preserved in the tree). Yet, this would raise the question of how extensions document handling of missing attributes and their defaults since we cannot use the schema directly (unless we have a special field that describes the behavior the library should have without actually enforcing though schema validation tools). This is because extensions ought to be language neutral in principle. and someone implementing the extension in a different language needs to know how to handle these issues without being an expert in the original implementation.