A function that builds whole grooves
Put it all together: one groove() function with smart defaults, a recursive fill, and a song() that combines them.
Challenge A:def groove(kicks, snares, hat_hits=1): plays kick(kicks), snare(snares) and the hihat on 1-8 with hat_hits. Call groove([1, 5], [3, 7]).