Refactored MigratableProcess to be an abstract base class