Move icon code into a mixin