garbage game loop. functional?