implement Player class