Documentation

We need a proper documentation that can be constantly improved upon