Allow thaw to be used both as a Constructor and not.  Diverge how each is used, but connect their same thawing private variable.
Also, detect window so can be reused in Node.js and other platforms.