Python read_scanlines did not honor channel subset, leading to chaos.

It's a one-line fix. The rest is all just making sure it's tested by the testsuite.