Today in "why did we ever do this?", we discover we've vendored code from PIL/Pillow, but PIL/Pillow moved some macro definitions around, so now our vendored code conflicted with their macros that they included in the headers we're including. The solution is to throw out our vendored macros and update the semantics in our vendored Draw.c. I'm not sure why we vendored it, but we seemingly did remove some stuff from it to avoid having to pull in all of PIL/Pillow.