Track where a dep came from, for conflict printing

Also, add some documentation