Refactor: executor: functionize getting current time in timespec
... to reduce code duplication.
Also, previously, when executing a resource command, the run and first run
times would be set with separate clock_gettime() calls, so they would slightly
different; this avoids that by copying the run time to the first run time.