.wants adds potential out-of-tree sources to your state (for monorepos, for example)
.includes adds targets from another source to this one, adding inheritance
* add abstraction for paths to facilitate unit tests
* flesh out completion (--install-completion)
* do sync init before stateless modes so list knows more