finish ch3 code cleaning
seperate emacs-macro-binary code to a single file
finish ch4 code cleaning
finish ch5 code cleaning
make macro better