Dustin Johnson completes WGC slam