Fixed bugs where observers were not get initialized correctly.
Modified ProcessUtils to be single threaded.
Documented code.