code clean up/optimization
- check move to EMPTY or FULL cell
- random move for multiple best choices
- optimize list copy