Optimize: Use a plain non-recursive QMutex in the QResourceManager.

The overhead of a read/write lock should not be required for such
small critical sections. It will also allow us to cleanup the
code a bit more. Already, the code changes lead to a small improvement

before:
RESULT : tst_QResourcesManager::benchmarkAllocateSmallResources():
     46,552,767 instructions per iteration (total: 46,552,767, iterations: 1)
RESULT : tst_QResourcesManager::benchmarkAllocateBigResources():
     48,338,703 instructions per iteration (total: 48,338,703, iterations: 1)

after:
RESULT : tst_QResourcesManager::benchmarkAllocateSmallResources():
     44,848,672 instructions per iteration (total: 44,848,672, iterations: 1)
RESULT : tst_QResourcesManager::benchmarkAllocateBigResources():
     46,634,161 instructions per iteration (total: 46,634,161, iterations: 1)

Change-Id: I8ef0aa52be3caf8b4c8691579677f693a054565c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>