Extracts the flowcell ID, as well as the instrument name from RunInfo.xml. If this file is not provided,
        NA values are substituted

def parseruninfo(self):
        """Extracts the flowcell ID, as well as the instrument name from RunInfo.xml. If this file is not provided,
        NA values are substituted"""
        # Check if the RunInfo.xml file is provided, otherwise, yield N/A
        try:
            runinfo = ElementTree.ElementTree(file=self.runinfo)
            # Get the run id from the
            for elem in runinfo.iter():
                for run in elem:
                    try:
                        self.runid = run.attrib['Id']
                        self.runnumber = run.attrib['Number']
                    except KeyError:
                        break
            # pull the text from flowcell and instrument values using the .iter(tag="X") function
            for elem in runinfo.iter(tag="Flowcell"):
                self.flowcell = elem.text
            for elem in runinfo.iter(tag="Instrument"):
                self.instrument = elem.text
        except IOError:
            pass
        # Extract run statistics from either GenerateRunStatistics.xml or indexingQC.txt
        self.parserunstats()