Added LazyId
Changed type bound on the implicit passed to PermOnIdRef
RefNone folds to initial not RefNone
Partial fix to RefFutureOption.orIfNone

If the future resolves to None, the result is now RefFutureRef(RefNone)
not RefFutureRef(None.itself).  However, this commit doesn't address
the issue that failures are also directed to the orIfNone function, and
probably shouldn't be.