Iniesta renews with Barca 'for life'