Migration service. This is used by MapEntityStore EntityStore implementations to
migrate JSON state for Entities. To use it register the service so that the EntityStore
can access it, and then create MigrationRules during the assembly of your application,
which is registered as metainfo for this service.
The rules invoke operations, which in turn invoke the Migrator interface to perform the actual
migration. If the Migrator accepts a migration command the change is performed, and an event
is triggered. These events can be received by implementing the MigrationEvents interface in a service
that is visible by this MigrationService.