working on eficiency and improving the move method