add player movement and separate base entity