board::do_move_experimental() fully working, not optimized yet