Add automatic generation of headers
Also use generated documentation in a number of os/*.* files
Remove remaining declarations found by finddeclarations.pl
Restore memory.h headers list from master
Add a wrapper for msgpack.h
Surround nvim/func_attr.h includes with define/undef DEFINE_FUNC_ATTRIBUTES

Required for FUNC_ATTR_UNUSED to work in lib/k*
Make nvim/lib/k*.h headers be the last one in the list

So that they do the last nvim/func_attr.h include
Add include guard to ex_cmds_defs
Some style fixes
Add missing include to mbyte.c
Remove a number of unneeded func_attr includes
Remove unneeded klist include in channel.c
Move memory.h include above func_attr.h include
Add REAL_FATTR_ macros to func_attr.h, use them in lib/k*

Otherwise FUNC_ATTR_* macros may appear empty