add computer player and refactor player into human player and base player