Not sure yet if this is a sensible organization, but try to make the web/ch/pin files the 'toplevel' files of core
Get as far as building tangle from tangle.web and tangle.ch