Zach Johnson wins The Open Championship