No.
Suppose you have just installed NGCCC. In its initial state, it only knows about bitcoins, and isn't able to recognize any colors.
But you, as a user, is interested in some asset. So you instruct it: "NGCCC, I want you to track certain colored colored coins using parametrized color kernel OBC. Their genesis is X:Y. Please call them Foo".
NGCCC will add a record like "OBC:X:Y = Foo" into its configuration file so it will be able to remember about this association between name and color.
And now it is able to recognize these Foo-coins.
Issuing transaction is just a normal transaction. It simply acts as a starting point: next transaction will spend its output, and so on.
Blockchain has information about transfers of colored coins.
Everything else can be stored elsewhere.
We use a layered model.
Lowest layer is the colored coin model, it is about color kernel and colorvalues. Contracts simply do not exist on that level.
Contracts can appear on higher levels, but so far we haven't fully implement this higher level. But the thing is, it can be implemented in many different ways, and it isn't of utter importance.
I believe it's better to keep it manual for now.
E.g. suppose John Smith wants to issue 1000 bonds with face value of 1 USD each. To do this he will write a message like
In order to redeem them, colored coins must be sent to address 1XYZabc, and then sender must write a message with his contact and banking information, sign it with address which was used to send colored coins to address mentioned above, and send me this signed message via email.
Then John Smith will sign this message using GPG and will post it in on forum. If there are people who trust him, they'll check if GPG signature is valid.
If they are willing to trade these bonds, they will add color mentioned in the message into their colored coin client.
Of course, we can create a special format for these contracts, make some kind of database where they can be published and so on.
But right now it isn't necessary: people can just use whatever they are comfortable with.
Colored coin software is just a tool which tracks coins.
I understand the approach regarding binding of asset/contract/... to color and I agree this is a good approach. Maybe concering yourself with implementing the "higher level" should have low priority.
Thank you! Especially for supplying your example John Smith contract you put in quote above, maybe this could be put somewhere into the "intro" document (https://github.com/bitcoinx/colored-coin-tools/wiki/colored_coins_intro).