#16 (Not DONE) Do better documentation