resolve cycle depency; add readme.md file; add gitignore