This code is published to github for reference only.
It is incomplete and was created over a weekend experimenting with git-annex and free monads in Haskell.
See the git-annex external special remote protocl for reference https://git-annex.branchable.com/design/external_special_remote_protocol/.