code: def mark_down_to_dict_of_obj(cls, file_path=None, text='', columns=None,
                                   key_on=None, eval_cells=True):
          
          text = cls._get_lines(file_path, text, split_lines=False)
          ret = OrderedDict()
          paragraphs = text.split('####')
          for paragraph in paragraphs[1:]:
              header, text = paragraph.split('\n', 1)
              ret[header.strip()] = cls.mark_down_to_obj(
                  text=text, columns=columns, key_on=key_on,
                  eval_cells=eval_cells)
          return ret
docs: This will read multiple tables separated by a #### Header
          and return it as a dictionary of headers
          :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 eval_cells: bool if True will try to evaluate numbers
          :return: OrderedDict of {<header>: SeabornTable}