add macro descriptions (and API to read them)