Extracted loopplayer.py, added ability to interrupt with keyboard interupt