have migration helpers use adapters for adapter-specific behavior

This uses the new adapter modeling to implement the adapter-specific migration helper behavior.

@jcredding ready for review.