Resolved the const issue.
Add comments for stdmacro.h.
Add GENERATE_SINGLETON.