Introduce a kind of "M/VM/V" for the generation.

Here the Models are the structures of the Json file, the Views are the
generated files. We were lacking intermediate classes, that could
tolerate the versatility of the Models, and factor the difficulty of
generating either a minion, a spell, a secret or a weapon card. 

Note that for the moment these only prints code on stderr. We need to
update the code in ProtoMinionCard and ProtoSpellCard to have it stick
with the new event system. Then we would just have to throw away
"CardCodeGeneartor".