Fix unshelve

The optimization to prevent downloading of ignored files broke
unshelving[1]. A shelveset is treated as a changeset by git-tfs, but there
is no changeset version for it, so you can't ask the workspace to get a
shelveset by version. To make this work the changeset itself needs to be
responsible for populating the workspace with the correct files[2].

[1] 351ed3d69faf6a110253a052c4c94cf331b846ce
[2] 26fe4ad2697530bdf9c6b70162eb6e413ee0df44