draw paths in stretches of 100 points to avoid the severe decrease in performance that may occur if long paths are draw
Added modifier key event handling for the macosx backend and cleaned up key event handler.
Updated to not use NSDictionary literals for pre-obj2.0 compiler support.
Removed shift from modifier flags as the character returned already includes shift operation
Fixes #1862: The PS backend would inadvertently close file handles passed to it on Python 3.  The TextIOWrapper that handles the encoding from unicode to ascii needs to be detached before its destructor is called, otherwise it will call close on the underlying file object.  Also cleans up how with statements are handled to avoid the sometimes problematic null contextmanager.
Fixed background colour of PNGs saved with a non-zero opacity.
Switch agg backend to use pixfmt_rgba32_plain instead of pixfmt_rgba32, which fixes a problem with alpha-blending partially transparent backgrounds.