* Expose a generic lazy type
* Switch to generic lazy globals
* simplify global lazy context a bit
* rename LazyGlobal to Global
* use Memo::global in more examples
* Fix soundness issue with deref_impl. It relies on the size of self, so it cannot be safe
* add a comment about safety
* Make clippy happy
* fix formatting
* Restore changes to signal impl
* Add helper methods for global signal and global memo to make getting the inner value easier
* Fix#2612: adjust readable trait to allow try_peek
Our implementation for Readable was inconsistent.
We had a try_unchecked variant for read but not for peek.
This resolves that by making a breaking change to the
Readable interface.
* fix doctests too