:bug: Teach git-repository-provider to recognize .git-files
:bug: Teach git-repository-provider to recognize .git-files

Git repositories may be contained in a .git directory or a .git file
in the workdir hierarchy, but Atom only recognizes the directory format.
Teach Atom to recognize the filesystem-agnostic Git symbolic link
used by default in many situations including, for example, submodules.

The .git file contains a relative or absolute path to the location of
the real git-dir, preceded by the 8-byte string "gitdir: ".

Here's a console log showing the normal creation of such a symbolic link.

    /tmp $ git init --separate-git-dir foo.git bar
    Initialized empty Git repository in /tmp/foo.git/
    /tmp $ ls
    /tmp $ bar  foo.git
    /tmp $ ls -la bar
    drwxr-xr-x 2 hordp hordp 4096 Sep 18 15:54 .
    drwxr-xr-x 4 hordp hordp 4096 Sep 18 15:54 ..
    -rw-r--r-- 1 hordp hordp   25 Sep 18 15:54 .git
    /tmp $ ls foo.git
    branches  config  description  HEAD  hooks  info  objects  refs
    /tmp $ cat bar/.git
    gitdir: /tmp/foo.git

Fixes #8876

Huaraz2/atom,decaffeinate-examples/atom,scippio/atom,Klozz/atom,Ingramz/atom,alfredxing/atom,me-benni/atom,jordanbtucker/atom,mrodalgaard/atom,CraZySacX/atom,gzzhanghao/atom,beni55/atom,rlugojr/atom,bolinfest/atom,Mokolea/atom,daxlab/atom,ashneo76/atom,kandros/atom,t9md/atom,stinsonga/atom,alfredxing/atom,decaffeinate-examples/atom,florianb/atom,beni55/atom,tjkr/atom,florianb/atom,Arcanemagus/atom,stinsonga/atom,xream/atom,ashneo76/atom,efatsi/atom,brumm/atom,andrewleverette/atom,florianb/atom,rlugojr/atom,kevinrenaers/atom,Locke23rus/atom,bsmr-x-script/atom,xream/atom,hellendag/atom,PKRoma/atom,liuderchi/atom,seedtigo/atom,Mokolea/atom,dijs/atom,lpommers/atom,AdrianVovk/substance-ide,svanharmelen/atom,ardeshirj/atom,gzzhanghao/atom,jeremyramin/atom,gontadu/atom,AdrianVovk/substance-ide,bsmr-x-script/atom,jordanbtucker/atom,gzzhanghao/atom,kaicataldo/atom,me-benni/atom,atom/atom,chfritz/atom,decaffeinate-examples/atom,gontadu/atom,ashneo76/atom,t9md/atom,Klozz/atom,rlugojr/atom,transcranial/atom,kaicataldo/atom,svanharmelen/atom,yamhon/atom,bolinfest/atom,andrewleverette/atom,brettle/atom,atom/atom,chfritz/atom,stinsonga/atom,brumm/atom,Huaraz2/atom,alexandergmann/atom,Austen-G/BlockBuilder,CraZySacX/atom,kevinrenaers/atom,jordanbtucker/atom,FIT-CSE2410-A-Bombs/atom,kaicataldo/atom,wiggzz/atom,sotayamashita/atom,alexandergmann/atom,kevinrenaers/atom,t9md/atom,scippio/atom,helber/atom,kandros/atom,scippio/atom,ardeshirj/atom,efatsi/atom,AlexxNica/atom,brumm/atom,Huaraz2/atom,AlexxNica/atom,AdrianVovk/substance-ide,me-benni/atom,helber/atom,PKRoma/atom,transcranial/atom,florianb/atom,beni55/atom,FIT-CSE2410-A-Bombs/atom,Austen-G/BlockBuilder,Arcanemagus/atom,brettle/atom,stinsonga/atom,liuderchi/atom,Locke23rus/atom,tjkr/atom,FIT-CSE2410-A-Bombs/atom,yamhon/atom,seedtigo/atom,alexandergmann/atom,daxlab/atom,andrewleverette/atom,xream/atom,efatsi/atom,mrodalgaard/atom,PKRoma/atom,bsmr-x-script/atom,wiggzz/atom,sotayamashita/atom,liuderchi/atom,jeremyramin/atom,Mokolea/atom,lpommers/atom,alfredxing/atom,Arcanemagus/atom,bj7/atom,mrodalgaard/atom,bj7/atom,daxlab/atom,Austen-G/BlockBuilder,Austen-G/BlockBuilder,johnhaley81/atom,atom/atom,ykeisuke/atom,Austen-G/BlockBuilder,Austen-G/BlockBuilder,brettle/atom,yamhon/atom,wiggzz/atom,helber/atom,Locke23rus/atom,hellendag/atom,gontadu/atom,chfritz/atom,Ingramz/atom,kandros/atom,AlexxNica/atom,dijs/atom,tjkr/atom,CraZySacX/atom,florianb/atom,johnhaley81/atom,Ingramz/atom,decaffeinate-examples/atom,bolinfest/atom,seedtigo/atom,dijs/atom,transcranial/atom,ykeisuke/atom,ardeshirj/atom,bj7/atom,ykeisuke/atom,Klozz/atom,liuderchi/atom,jeremyramin/atom,johnhaley81/atom,sotayamashita/atom,lpommers/atom,hellendag/atom,svanharmelen/atom