play_bach_choral refactor and play in loop feature