change the gen server options and output api

This patch changes both the way that options for gen server are
specified and fundamentally changes the way that the macros are
generated. **including removing macro generation for handle_info**