adding source files, documentation