basic queuing and playing functionality