More refactoring of sly-stickers.el and slynk-stickers.lisp

* contrib/sly-stickers.el (sly-stickers-exited-non-locally-face): Reverse
attribute order as it affects `get-face-property'
(sly-stickers--set-face): Assert that a color can be guessed.
(sly-stickers--arm-sticker): Renamed
`sly-stickers--last-value-desc' to
`sly-stickers--most-recent-description'
(sly-stickers--last-value-desc): Remove.
(sly-stickers--populate-sticker): Merge in
`sly-stickers--mark-empty-sticker' behaviour.
(sly-stickers--mark-empty-sticker): Removed.
(sly-stickers-fetch-all-and-forget): Conform to new protocol.

* contrib/slynk-stickers.lisp (recording): New class.
(describe-recording, print-object, exited-non-locally-p): New helpers.
(call-with-sticker-recording): Record condition.
(call-with-sticker-recording): Make instances of `recording'
(fetch-and-forget): Use new slot values `new-recordings-of' and
`reported-recordings-of'.

* test/sly-stickers-tests.el (sly-stickers--values-at-point): Remove.
(stickers-record-stuff): Remove assertion that made test too
brittle.