Added IMovable and MoveOnInput (complete commit)