Support uploading a single cookbook (transitive dependency)

@reset @ivey okay. This is still :construction: because it's unclear to me what the "right thing to upload" is.

As this code is written, if you run `berks upload`, we will upload the entire graph for you (all explicitly, implicit, and transitive dependencies). If you run `berks upload NAME`, we will only upload that cookbook (none of it's dependencies).

I thought this was the right path, but we seem to have some tests that expect other behavior, so I'm a little sure of what the `upload` method should actually do in these different scenarios.

- Fixes #1097
- Fixes #1113