Hunter Mahan pulls away to claim Barclays victory