整理代码，增加 Makefile.