added move subclass, changed many functions, added get move functions
added move subclass, changed many functions, added get move functions