add gitignore, and some source file. finished assert and protocol
update timer