move API macros to the bottom of the header file
removing majority of #include's from generated header file