Restructing MigrationServices

* Extracting a class to a separate file
* Moving a module function up a level to better reflect the desired
  structure.
* Removing a "junk drawer" module by extracting a module function to
  a method of the object