Let _pcolorargs handle the shape of C, checking compatibility with X and Y

This is a draft of a minimal change to address #1688.  It still needs tests, but I am putting it up now in case anyone wants to comment on the basic strategy here.