Main commit. Added the backbone of the program and the documentation
as it was before.