Use cStringIO to write editor_icons.cpp

- Multiple jobs might try to access editor_icons.cpp when sCons is updating it. cStringIO helps to  minimize the blocking window, hence lower the chance getting file access conflict error when building with multiple jobs