def __init__(self, **options):
    'Intializes the StringGraph Class by defining nodes and edges'
    defaults = {'graph_name': 'StringGraph', 'node_names': ['String', 'StringList'], 'node_descriptions': ['A plain string', 'A list of strings with no \\n, created with string.splitlines()'], 'current_node': 'String', 'state': [1, 0], 'data': 'This is a test string\n it has to have multiple lines \n and many characters 34%6\n^', 'edge_2_to_1': edge_2_to_1, 'edge_1_to_2': edge_1_to_2}
    self.options = {}
    for (key, value) in defaults.items():
        self.options[key] = value
    for (key, value) in options.items():
        self.options[key] = value
    Graph.__init__(self, **self.options)
    self.add_node('File', 'String', String_to_File, 'String', File_to_String, node_description='Plain File')
    self.add_node('CStringIo', 'String', String_to_CStringIo, 'String', CStringIo_to_String, node_description='C File Like Object')
    self.add_node('StringIo', 'String', String_to_StringIo, 'String', StringIo_to_String, node_description='File Like Object')
    self.add_edge(begin_node='StringList', end_node='File', edge_function=StringList_to_File)
Intializes the StringGraph Class by defining nodes and edges
def __init__(self, **options):
    
    defaults = {'graph_name': 'StringGraph', 'node_names': ['String', 'StringList'], 'node_descriptions': ['A plain string', 'A list of strings with no \\n, created with string.splitlines()'], 'current_node': 'String', 'state': [1, 0], 'data': 'This is a test string\n it has to have multiple lines \n and many characters 34%6\n^', 'edge_2_to_1': edge_2_to_1, 'edge_1_to_2': edge_1_to_2}
    self.options = {}
    for (key, value) in defaults.items():
        self.options[key] = value
    for (key, value) in options.items():
        self.options[key] = value
    Graph.__init__(self, **self.options)
    self.add_node('File', 'String', String_to_File, 'String', File_to_String, node_description='Plain File')
    self.add_node('CStringIo', 'String', String_to_CStringIo, 'String', CStringIo_to_String, node_description='C File Like Object')
    self.add_node('StringIo', 'String', String_to_StringIo, 'String', StringIo_to_String, node_description='File Like Object')
    self.add_edge(begin_node='StringList', end_node='File', edge_function=StringList_to_File)