Revert 170357 "Revert of Make DOMWrapperWorld::current() return ..."

This is a revert of the revert of r170261.
r170261 was reverted because it introduced new memory leaks, but the leaks were false-positive.

> Revert of Make DOMWrapperWorld::current() return a reference instead of a pointer (https://codereview.chromium.org/209713003/)
> 
> Also reverting dependent patch https://codereview.chromium.org/213543004
> 
> Reason for revert:
> Likely to have caused memory leaks:
> http://build.chromium.org/p/chromium.memory/builders/Linux%20ASan%2BLSan%20Tests%20%282%29/builds/989/steps/browser_tests/logs/stdio#failure1
> 
> (1)
> Direct leak of 32 byte(s) in 1 object(s) allocated from:
>     #0 0x4b50d1 in operator new(unsigned long) /usr/local/google/home/hwennborg/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:62
>     #1 0x9bdfd8a in WebCore::V8PerContextDataHolder::install(v8::Handle<v8::Context>, WTF::PassRefPtr<WebCore::DOMWrapperWorld>) third_party/WebKit/Source/bindings/v8/V8PerContextData.cpp:56
>     #2 0x9bdfa06 in WebCore::V8PerContextData::V8PerContextData(v8::Handle<v8::Context>, WTF::PassRefPtr<WebCore::DOMWrapperWorld>) third_party/WebKit/Source/bindings/v8/V8PerContextData.cpp:108
>     #3 0x9bc1afd in WebCore::V8PerContextData::create(v8::Handle<v8::Context>, WTF::PassRefPtr<WebCore::DOMWrapperWorld>) third_party/WebKit/Source/bindings/v8/V8PerContextData.h:66:16
>     #4 0x9be64fc in WebCore::V8PerIsolateData::ensureDomInJSContext() third_party/WebKit/Source/bindings/v8/V8PerIsolateData.cpp:132
> 
> (2)
> Indirect leak of 40 byte(s) in 1 object(s) allocated from:
>     #0 0x4b50d1 in operator new(unsigned long) /usr/local/google/home/hwennborg/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:62
>     #1 0x9b2ee18 in operator new third_party/WebKit/Source/bindings/v8/DOMWrapperWorld.cpp:59:22
>     #2 0x9b2ee18 in WebCore::DOMWrapperWorld::create(int, int) third_party/WebKit/Source/bindings/v8/DOMWrapperWorld.cpp:53
>     #3 0x9be64e7 in WebCore::V8PerIsolateData::ensureDomInJSContext() third_party/WebKit/Source/bindings/v8/V8PerIsolateData.cpp:132
>  
> (3)
> Indirect leak of 24 byte(s) in 1 object(s) allocated from:
>     #0 0x4b46c1 in __interceptor_malloc /usr/local/google/home/hwennborg/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:75
>     #1 0x62caf0a in partitionAllocGenericFlags third_party/WebKit/Source/wtf/PartitionAlloc.h:533
>     #2 0x62caf0a in partitionAllocGeneric third_party/WebKit/Source/wtf/PartitionAlloc.h:549
>     #3 0x62caf0a in WTF::fastMalloc(unsigned long) third_party/WebKit/Source/wtf/FastMalloc.cpp:125
>     #4 0x9b2ed61 in operator new third_party/WebKit/Source/wtf/RefCounted.h:175
>     #5 0x9b2ed61 in WebCore::DOMWrapperWorld::create(int, int) third_party/WebKit/Source/bindings/v8/DOMWrapperWorld.cpp:53
> 
> Original issue's description:
> > Make DOMWrapperWorld::current() return a reference instead of a pointer
> > 
> > Now that it's guaranteed that DOMWrapperWorld is not 0 at any given time, we can make it a reference instead of a pointer.
> > 
> > BUG=341032
> > 
> > Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=170261
> 
> TBR=jochen@chromium.org,dcarney@chromium.org,abarth@chromium.org,haraken@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=341032
> 
> Review URL: https://codereview.chromium.org/217053007

TBR=enne@chromium.org

Review URL: https://codereview.chromium.org/218813002

git-svn-id: svn://svn.chromium.org/blink/trunk@170424 bbb929c8-8fbe-4397-9dbb-9b2b20218538