Documentation

* Adding pure documentation as I go along, otherwise, it will be much
more difficult later. However, the documentation provided is purely
"Draft" as it will most likely change as the library evolves over time.