I found this thread helpful (particularly Paul's post) http://forum.linuxmce.org/index.php?topic=2304.msg10938#msg10938
Basically, the steps I'm taking for Insteon Integration were:
1) Found a good existing FOSS C library for accesssing Insteon devices
2) Expanded C library and added C++ wrapper
3) Created device template (based on existing ZWave Device)
4) Used DCEGen to create a device
Do an apt-get install pluto-dcegen
Then cd to the directory where your sources are, like: cd /home/sources/src/bin
And run: /usr/pluto/bin/DCEGen -d [device template number]
5) Modified DCE header file
6) 'make bin' in device directory.
7) Add your code
There is a lot of good information in the forums and on the wiki, but it need some more work put into organizing it. Please post or PM me if you need some more help. There are a few guys here who are much better at this than I am, so I'm sure someone will be able to answer your questions.