[PECOFF] Use std::mutex.

Use <mutex> instead of "llvm/Support/Mutex.h".

Also change the type of mutex for the context object to recursive mutex, as
the driver could acquire the lock recursively. E.g. If file A has .drectve
section containing /defaultlib:B, the driver tries to parse file B, and if
file B has .drectve section, the driver acquires the lock again.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@204850 91177308-0d34-0410-b5e6-96231b3b80d8
[PECOFF] Use RAII object for mutex.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@204853 91177308-0d34-0410-b5e6-96231b3b80d8
[PECOFF] Avoid C-style cast.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@204855 91177308-0d34-0410-b5e6-96231b3b80d8