add base source
update README
add comments