Define warn function before being used.
Support `ls` versions without the `--group-directories-first` option.
Fix Git completion loader detection.
Link to Git's completion and prompt scripts.
Don't need to manually load Git's completion for Bash.

It should be taken care of automatically by Git's completion setup
scripts.
Load child .bashrc files at the start to give them a chance to setup the environment.
Exit early unless being loaded interactively.
Don't wrap lines when using Nano.