Add Daemon restart test along with Daemon utils

This PR allows writing tests that need a daemon restart.
There is also a very useful test case that can also serve as an example on how to use it.

Ping @unclejack @tianon @vieux
When I did `UnixNano()` originally, I hit #7102, which I don't know why it was closed.