fixed crash on image-based background()

- brightnessComponent throws an exception when the underlying NSColor
is in the NSPatternColorSpace
- the graphicsView uses .brightness to decide on the color of the
scroll knobs
- the view now treats all image backgrounds as `light’ instead
rearranged the examples folder

- categories now mirror the project page’s listing
use the ordered() command rather than a lambda
added support for dotted attr keys

- so you can now sort a list of, say, grobs by ‘bounds.height’ or the
like
sandbox no longer needs to special-case examples

- since the example scripts all switched to using http for data, they
don’t depend on being run from a particular working dir anymore
don't re-run the script for single image exports

- use the current canvas contents instead
better number duck-typing

- there were a bunch of places where using WIDTH or HEIGHT wouldn’t get
recognized as a float (since, of course, it’s not)
- numlike() helper checks for __float__ rather than matching against an
isinstance laundry list
- the MagicNumber class has a few more arithmetic dunder methods
keybindings clean-up

- got rid of the awful beeping on shift-line-down (by changing to a
non-cursed key combo, sadly)
- restored the hide-others default binding (no more ace cheat sheet)
fill() and background() support image paths/urls
added increment/decrement shortcuts

- mapped to ctrl-up/dn
trying to ReSTify the description...