Warn about unused TOML keys

Closes #27
Generalise `find_project` to not always search parents.

Also, add a helper around `find_project` that returns `dir/file` rather
than just `dir`.
Check for the existence of Cargo.toml when reading packages.

Fixes #82.
auto merge of #83 : huonw/cargo/manifest-search, r=alexcrichton,alexcrichton
auto merge of #87 : alexcrichton/cargo/toml-warnings, r=wycats

Closes #27
Don't infinitely recurse on cyclic path deps

Instead, keep a table of what we've visited and halt recursion whenever we
re-visit a package.

Closes #77
auto merge of #86 : alexcrichton/cargo/issue-77, r=wycats

Instead, keep a table of what we've visited and halt recursion whenever we
re-visit a package.