Fixes deadlock issue for synchronous objectForKey:

Re-implements synchronous objectForKey as true synchronous methods. See http://stackoverflow.com/questions/19306934/trouble-with-dispatch-semaphore-wait-on-some-devices/19325192#19325192 for discussion.
Refactors asynchronous objectForKey:block: methods to use synchronous objectForKey: counterparts
Optimizes code by removing unnecessary method calls and postponing object initializations
Merge branch 'master' of https://github.com/rushproject/TMCache

# By Alex Pavlov
# Via Alex Pavlov
* 'master' of https://github.com/rushproject/TMCache:
  Optimizes code by removing unnecessary method calls and postponing object initializations
  Refactors asynchronous objectForKey:block: methods to use synchronous objectForKey: counterparts
  Fixes deadlock issue for synchronous objectForKey: