Extend Cartfile syntax to support pinning to arbitrary branches/tags/commits

#193, retargeted to `0.4-development`.

Resolves #100.
:grin: my favourite thing about Swift thus far has been exploring it with you lovely folks!