Renamed AttributeManifest.

The old name was TargetManifest.
Changed _target_manifest to _attribute_manifest.
Cleaned up AttributeManifest.
Cleaned up AttributeManifest.
Cleaned up AttributeDetail.

Removed **kwargs from initializer signature.
Updated Instrument._attribute_manifest.
Cleaned up AttributeDetail.
Renamed AttributeDetail.display_string property.

The old name was AttributeDetail.space_delimited_lowercase_attribute_name.
Removed Attribute.is_null property.

The property was unused.
Removed AttributeDetail.allow_none property.

The property was unused.
Cleaned up Editor.
Cleaned up Editor.
Migrating AttributeDetail initializer signature. CODING STANDARDS.

OLD:

    AttributeDetail.__init__(*args)

NEW:

    AttributeDetail.__init__(
        display_string=None,
        editor_callable=None,
        is_positional=True,
        menu_key=None,
        name=None,
        retrievable_name=None,
        )

The new signature will be self-documenting.

The current commit establishes an intermediate signature to allow migration
between the old and new.

CODING STANDARDS: use of *args is basically discouraged everywhere.

The reasons for discouraging *args have to do with our documentation regime
(and Sphinx's way of working) and not with Python language features.
Migrating AttributeDetail initializer signature.
Migrating AttributeDetail initializer signature.
Migrating AttributeDetail initializer signature.
Migrating AttributeDetail initializer signature.
Migrated AttributeDetail initializer signature.

AttributeDetail initializer signature is now keyword-only.
Removed AttributeDetail.retrievable_name property.

Use AttributeDetail.name instead.
Cleaned up AttributeManifest.