i think we should just provide the migration class and leave it to the user to register it when needed.