Ultimately, this is all about chord groups and the setup to chord groups. Think of chord groups like sentences which can be improvised over rather than individual chords which would be like trying to improvise over a series of unrelated words.
Definitions
“Sister chords” – we will be calling Ab7 and C-7 sister chords. This is because they share three common notes.
“Tritone substitution” – a tritone is three whole tones up from another note (c to f#). A V chord can be substituted with the chord a tritone away. It works because the two chords have common notes but also because a chord just a semitone higher wants to resolve down just as much as the original V chord wanted to resolve to the same chord.
“Diminished chords” – can replace other chords much like the tritone sub. They are particularly handy resolving to minor chords like the example below.
Bars 1 to 4 and 16 to 19: The first chord of the song is an Ab, establishing the key. But it immediately starts to function as it’s sister chord C-7, setting up a II – V – I pattern to a temporary key center (Cm7 – F7 – Bb)
Bars 10 to 13: The same II – V – I pattern is repeated with a different melody.
Bars 4 to 7 and 13 to 16: Simplychanging the Bb7 to a Bbm7 sets up the tonic II – V – I group. Again, the Abmaj7 also functions as it’s sister chord the C-7, setting up the next group.
Bars 8 and 9: The D7 here is a tritone substitute (see above) for Ab7 which would have been a typical II – V – I group.
Bars 27 to 30: The B diminished chord is a substitute for a G chord and sets up the push to end. The ending is a traditional cycle of fourths group: III – VI – II – V – I.