New player class

Abstract stuff into player class