add less dependency too, whoops
rewrite cakefile to reduce redundant code