This will convert a mark down file to a seaborn table
         and return it
        :param file_path: str of the path to the file
        :param text: str of the mark down text
        :param columns: list of str of columns to use
        :param key_on: list of str of columns to key on
        :param ignore_code_blocks: bool if true will filter out
            any lines between ```
        :param eval_cells: bool if True will try to evaluate numbers
        :return: SeabornTable

def mark_down_to_obj(cls, file_path=None, text='', columns=None,
                         key_on=None, ignore_code_blocks=True, eval_cells=True):
        """
        This will convert a mark down file to a seaborn table
         and return it
        :param file_path: str of the path to the file
        :param text: str of the mark down text
        :param columns: list of str of columns to use
        :param key_on: list of str of columns to key on
        :param ignore_code_blocks: bool if true will filter out
            any lines between ```
        :param eval_cells: bool if True will try to evaluate numbers
        :return: SeabornTable
        """
        text = cls._get_lines(file_path, text, split_lines=False)

        if ignore_code_blocks:
            text = text.split("```")
            for i in range(1, len(text), 2):
                text.pop(i)
            text = (''.join(text)).strip()

        assert text.startswith('|') and text.endswith(
            '|'), "Unknown format for markdown table"

        table = []
        for row in text.split('\n'):
            row = row.strip()
            if row == '':
                continue
            assert row[0] == '|' and row[-1] == '|', \
                'The following line is formatted correctly: %s' % row
            table.append([cls._clean_cell(cell, _eval=eval_cells)
                          for cell in row[1:-1].split('|')])
        return cls(table=table[2:], columns=columns,
                   key_on=key_on, row_columns=table[0])