code: def obj_to_mark_down(self, file_path=None, title_columns=False,
                           quote_numbers=True, quote_empty_str=False):
          
          md, column_widths = self.get_data_and_shared_column_widths(
              data_kwargs=dict(quote_numbers=quote_numbers,
                               quote_empty_str=quote_empty_str,
                               title_columns=title_columns),
              width_kwargs = dict(padding=1, pad_last_column=True))
  
          md.insert(1, [u":" + u'-' * (width - 1) for width in column_widths])
          md = [u'| '.join([row[c].ljust(column_widths[c])
                            for c in range(len(row))]) for row in md]
          ret = u'| ' + u' |\n| '.join(md) + u' |'
          self._save_file(file_path, ret)
          return ret
docs: This will return a str of a mark down table.
          :param title_columns:   bool if True will title all headers
          :param file_path:       str of the path to the file to write to
          :param quote_numbers:   bool if True will quote numbers that are strings
          :param quote_empty_str: bool if True will quote empty strings
          :return: str