It's pretty straight forward:
1.) Add the device and the command it implements in the Webadmin (see e.g. CM11A for examples).
2.) go to trunk/src/sql2cpp from a compiled svn checkout and simply run "./sql2cpp"
(that will update the c++ database constants/objects to include your new devicetemplate id)
3.) go to trunk/src/DCEGen and run "./DCEGen -d <your devicetemplate id>"
4.) go to the newly created directory trunk/src/<your device template name> and do a "make bin"
5.) add a new device from your template
6.) start your device with "./<your device template name> -d <your device id>"
7.) watch the successful connection to the router and verify the "Registered: yes" for your device in the web interface
i will add a wiki page after extending some commands and events.