add some links
properly handle additional forms of data. functions vs corutines, promises vs non promises