Lots of documentation of canopy.h
Continue working on canopy.h, add promises