Creates a macro for category icons.

How's the indentation/whitespace on the markup this returns? Do we need to add any `-`s in the macro's `if` statements?