A friend showed me this progression:
G7, F#m7b5, B7, Em7, A7, Dm7, G7, CMaj7, Cm7, Bm7, Bdim7, Am7, Ab7, Bm7, Bb7, Am7, Ab7
For the most part, I understand that at its heart it is built on a
I vi ii V in the key of C.
I do not understand some of the chords though. What does the F#m7b5 function as? What about that B7? Also, the Cm7, Bm7, Bdim7 sounds so good to my ear but what is the theory behind that?