dPoW integration steps (source):
include komodo.h with KOMODO_SOURCE being the string of coin symbol
add extra test to ContextualCheckBlockHeader()
else if ( komodo_checkpoint(¬arized_height,nHeight,hash) < 0 )
return state.DoS(100, error("%s: forked chain %d older than last notarized (height %d) vs %d", func,nHeight, notarized_height));
call komodo_connectblock(pindex,*(CBlock *)&block) at the end of ConnectBlock()
call komodo_disconnect(pindex,*(CBlock *)&block) at the start of DisconnectBlock()
Make sure notarized tx are being made by notaries running iguana notary dapp. replace the notaries.h and komodo_notary.h list if using your own notary nodes.
Basically an afternoon worth of code changes and then ensuring notaries are the hardest part, probably dealing with paying some fees. They could also setup their own notary nodes too.