Add a lot of documentation and finalize the API
Merge master
Fix a bad merge.
Merge pull request #10 from gk5885/docs

Add a lot of documentation and finalize the API