update cdiff to master branch
add basic submodule implementation