Mine valid but nonstandard transactions
I suggest you go and read about just what cgminer is presented with, in most cases it is just the header which has absolutely no bearing on the content of the block. It does not, and can not in most situations know what the work it has been provided with actually is. 

The node providing work must be modified slightly by changing the isStandard checks, which you can find in main.cpp of the Bitcoin core client. There's not really that much interesting you can do at present without making your block invalid, but it's easier just to submit them directly to eligius.st which is a pool that already accepts certain nonstandard transactions. The chance of a user solo mining a block is vanishingly tiny at this point.