refactor MutexLockGuard, ReadLockGuard and WriteLockGuard to use template magic instead of Copy/Paste code
refactor MutexLockGuard, ReadLockGuard and WriteLockGuard to use template magic instead of Copy/Paste code

cvmfs-testing/cvmfs,djw8605/cvmfs,reneme/cvmfs,ruvolof/cvmfs,alhowaidi/cvmfsNDN,alhowaidi/cvmfsNDN,Gangbiao/cvmfs,cvmfs-testing/cvmfs,cvmfs/cvmfs,bbockelm/cvmfs,DrDaveD/cvmfs,Moliholy/cvmfs,cvmfs/cvmfs,djw8605/cvmfs,Moliholy/cvmfs,DrDaveD/cvmfs,Moliholy/cvmfs,bbockelm/cvmfs,ruvolof/cvmfs,trshaffer/cvmfs,reneme/cvmfs,Gangbiao/cvmfs,trshaffer/cvmfs,cvmfs/cvmfs,DrDaveD/cvmfs,cvmfs-testing/cvmfs,trshaffer/cvmfs,btovar/cvmfs,trshaffer/cvmfs,alhowaidi/cvmfsNDN,cvmfs/cvmfs,Moliholy/cvmfs,alhowaidi/cvmfsNDN,cvmfs-testing/cvmfs,DrDaveD/cvmfs,cvmfs/cvmfs,Gangbiao/cvmfs,trshaffer/cvmfs,Gangbiao/cvmfs,DrDaveD/cvmfs,btovar/cvmfs,DrDaveD/cvmfs,reneme/cvmfs,bbockelm/cvmfs,ruvolof/cvmfs,alhowaidi/cvmfsNDN,cvmfs-testing/cvmfs,bbockelm/cvmfs,MicBrain/cvmfs,reneme/cvmfs,MicBrain/cvmfs,Gangbiao/cvmfs,ruvolof/cvmfs,ruvolof/cvmfs,Moliholy/cvmfs,btovar/cvmfs,MicBrain/cvmfs,cvmfs/cvmfs,btovar/cvmfs,DrDaveD/cvmfs,reneme/cvmfs,bbockelm/cvmfs,djw8605/cvmfs,cvmfs/cvmfs,djw8605/cvmfs,btovar/cvmfs,djw8605/cvmfs,MicBrain/cvmfs,MicBrain/cvmfs