Replace WeakMap with random property

:warning: Submitted against `rearch` branch, not as a recommendation, but for contemplation.

This has obvious disadvantages, but it does lend a speed-up over v0.9
and the closure-avoiding/WeakMap version.