everything in its place
plotstyle now has COPY/LIVE/OFF modes

- and can set them globally or as a context mgr
- default is COPY (though NodeBox behavior is LIVE)
- copy: the value returned by e.g., rect() is not connected to the
bezier already placed on the context. its attrs can be changed and if
it’s passed to plot an additional rect will be added to the context
- live: the returned grob *is* the grob on the canvas. you can update
its attrs and affect the way it will eventually be drawn
- off: any calls to methods that take a `draw` arg will default to
draw=False
major overhaul of plotdevice.graphics

- new alpha(), blend(), and shadow() commands to change global settings
for shape-drawing
- added layer() context manager to group objects to be
shadowed/faded/etc.
- beziers now use core-graphics for drawing in order to get access to
‘transparency layers’
- broke the massive grobs.py file into submodules (with the
module-level activate() method handling the _ctx ref passing). grobs
itself now contains just the inheritance machinery and Image class
- fill() can now accept multiple colors to define a gradient or an
image to tile (see also the Gradient & Pattern classes)