work on migration class
encapsuating into a migration object