Added file format. Added reader and writer. The reader can reconstruct a
function to human-readable string. the file IO is not yet implemented in
the gui