Add documentation and first version of program