Porto triumphed in an epic tie that swung both ways before being settled by a spot-kick five minutes from the end of extra time