cleaned up some move logic