The base player class