fix writing out of bound bug in mkromfs.c

originally ,mkromfs writes out-of-bound value because variable 'b'
was mistaken as a 4-byte int rather then a byte.
fix : writing sections are now replaced by 2 new functions ,in which
size of variables are treated correctly.
add next_filehdr=0 if no next file & dir name

finalize mkromfs.c ,add in forgotten functions