rename folder i@kael.me -> kaelzhang
complete all functionalities, add test cases, add .gitignore, add makefile