Give a more accurate scm status in the file browser

When using ⇧⌘Y we would show the status as "Unversioned" if the scm status is disabled. This is confusing. So now we explicitly check if the scm status is disabled and inform the user appropriately.
Move `scm_enabled_for_path` function below `root_for_path`

This is to keep with the original organization of the code where the public APIs are defined after the private functions and in the order declared in the header.