add main source files
Merge pull request #1 from tackman/feature/programs

add main source files