Update artifact push and pull so that they can handle artifact refs
Description
Now that we can load the build dependencies of artifacts given an artifact ref, I've extended support for bst artifact push so that it can handle artifact refs as arguments.
If a user tries to checkout "all" dependencies of an artifact, BuildStream will error.
This MR partially addresses #822 (closed)