Event driven

The other side of [evented entropy](https://github.com/mirage/mirage/pull/261).

The interface now feeds entropy to a provided handler.

On the Unix side, this means spinning up a timer-wheel and simply reading `/dev/urandom` periodically. Which should instead be done after other events fire, to avoid needless wakeups. The handler is fed some initial entropy as soon as it is installed.

On the Xen side, we still just use built-in (soft) RNG and not even bother spinning the timers. This provider should start handing out time measurements and such from drivers, later on.
Yes, it is horribly arbitrary but, as @avsm says, the idea is for reseed to eventually be called after waking up from the event loop. (Probably every N-th time or so.)

The interface is (re-) designed to allow the low level to expose its actual entropy, as opposed to providing random numbers, and this unix version is basically just a mockup of that.