Add submodulues, link, re-organize project, ensure compilation works.