Documentation (Round 1)

Added many comments to the code.