Add lots of documentation comments