Use a single TagsField class to export supporter tags.
ExporterInterface & ExporterBase and refactoring of field wrappers.

A new ExporterInterface and it's default implementation ExporterBase.
The __construct() now takes the mapping as argument instead of the
contact object.

All field wrappers access the contact objects exclusively via the
exporter object. So it's possible to the exchange the contact object
(ExporterInterface::setContact()) and reuse the exporter object for
multiple contacts.

All field wrappers must implement the ExporterMapperInterface.

All CampaignionContactExporter classes have been modified to inherit
from ExporterBase.
[supporter-export] Make the address_mapping part of the Exporter.

This duplicates the definition of the address_mapping. One time for the
fields that the exporter provides another time for the columns that the
CSV contains. Exporters currently don't provide a list of all keys that
they offer. This might be changed at some point. Then it would be
possible to use this list for the CSV-headers.
[newsletters] Remove old migrations so that we don't have to port them.
Introduce Contact-type plugin system.

\Drupal\campaignion\Contact is now the entity class for redhen_contacts.
We don't need to cast \RedhenContact objects anymore.

The plugin-system consists of the following classes:

ContactTypeManager: Plugin loader and factory. The main class to be used
by code working with exporters/importers.

ContactTypeInterface: Interface that all Contact-Type classes must implement.
Port everything to use the new Contact-API.

Contact-type features (ie. campaignion_supporter from the
campaignion_starterkit) need to provide a contact-type class via
hook_campaignion_contact_type_info().

Profile using any CRM functionality need to provide at least one
contact-type and set the 'campaignion_supporter_contact_type' which
defaults 'contact'. Hint: use "drush vset" or variable_set().

Failing to provide the default contact-type will lead to a
UndefinedContactTypeException being thrown.
Merge branch 'import' into 7.x-1.x