I agree with 1/3, but I have beef with 2:

> We actually have a reason to trust rndGen. @trusted can be used when code that is otherwise unsafe is known to be used only in a safe way.

In that case, why isn't `rndGen` *itself* trusted? It's not *how* you use it that is unsafe, its `rndGen` that is inherently unsafe due to the fact that it needs to be initialized, and does a host of unsafe things to do it.

I'll revert anyways, but I think it was wrong to make it safe to begin with. The user should make the judgement call to ask for a (potentially unsafe but trusted) rndGen. Once said rndGen is obtained, then generating uuid's *with* the acquired rndGen is safe.