Change 'attr_units' and 'attr_names' keys to 'units' and 'names' respectively
Expunge 'preferred' for the most part
Add global registry of representations and default names and units

Each representation is automatically registered when the class
is defined.  That provides a mapping between the alias name and
the class.

Each representation now defines the default names (e.g. ra, dec,
distance) and units (e.g. u.deg, u.deg, None) for that
representation.  These are only used in frames but here seems like
the most logical place to store this information.  Otherwise there
would need to be a secondary data structure, and authors of
new representations would need to have a way to add their frame
to that secondary structure.
Make frame representation_attrs completely dynamic

In order to remove boilerplate code in defining frames, a new
fully dynamic system for getting the representation attribute
names and units (ra, dec, etc) was added.  This relies on

- Global registry of representations (REPRESENTATION_CLASSES)
- _default_names and _default_units therein
- _representation_attrs defined in the frame class

The latter now only has to specify what is different from the
defaults defined in the representations.

With this change now every frame automatically has every representation
available for display or initialization.