More refactoring: Split up move method, made Move more coherent, other
small updates