merged back documentation branch into jarodwen/doc/function_sync