Thread safety fixes for TUnixSystem
Thread safety fixes for TUnixSystem

TSystem changed the last error string to be a class thread_local
so this code matches that change.
Caching of external path is now a thread_local to avoid race conditions.
Caching of initial time is done via an atomic.

Dr15Jones/root,Dr15Jones/root,Dr15Jones/root,Dr15Jones/root,Dr15Jones/root,Dr15Jones/root,Dr15Jones/root