Swizzle NSUserDefaults getters in otest-query

We have found that sometimes we couldn't query tests because 'SenTest' or 'XCTest' frameworks start running them. When it happens we can see errors like this:

  Failed to query the list of test cases in the test bundle: Error while parsing JSON: The data has been corrupted.: {
      stderr = "2014-03-26 11:08:27.405 sim[8792:707] /Applications/xcode_5.0.2.app/Contents/Developer/Platforms/iPhoneSimulator.platform/usr/bin/sim: Simulator does not seem to be running, or may be running an old SDK.\nTest Suite 'All tests' started at 2014-03-26 18:08:28 +0000\nTest Suite 'All tests' finished at 2014-03-26 18:08:28 +0000.\nExecuted 0 tests, with 0 failures (0 unexpected) in 0.000 (0.002) seconds\n";
      stdout = "";
  }

To prevent test frameworks running tests we were trying to clear their preferences before loading them. But then we have found that in some cases the preferences are not cleared because there is 'cfprefsd' daemon which caches preferences and retuns old, not cleared data. We tried to set environment variable `__CFPREFERENCES_AVOID_DAEMON` to `YES` to ignore data cached by 'cfprefsd' daemon - it helped but not in all cases.
In this commit we are swizzling `NSUserDefaults` getters and returning `nil` in all cases which guarantees that test frameworks are not reading old preferences and so are not running tests.