[WIP] Recursive Resolver

:warning: NOT READY TO MERGE :warning:

At the moment, this is my first shot at taking Bundler's resolver and putting it into CP. It's far from finished, and the interface needs some work, but at the moment it has two of the most basic specs passing. It's up here purely for discussion until all existing specs pass, then we can figure out what else we need it to do.

\cc @alloy @irrationalfab