Moved logic for inventory management into the player object and out of the singleton