refactor; don't inject new cell if making impossible move