update README to add more explanations and resources' links
update some comments
add more comments..
add flows.pdf which contains the abstraction of how it works, which messages are sent during each phase