Completed first pass at documentation