Emacs: give better error feedback

If the bg process is not available, or the current file is not in a
project, then explain this. Update the README as well.

Also fix some tabbing issues and add a bunch of tests.
Remove obsolete fsautocomplete binaries
Merge pull request #736 from rneatherway/issue319

Closes #319
Partial fix for #560

Add filename to returned DomRegion if available.
Merge pull request #737 from 7sharp9/EmptyDomRegionImprovement

Partial fix for #560
Project-aware selection of executable for emacs

Fixes #248

Note that this introduces a backwards-incompatible change to the
fsautocomplete protocol. The project response message is no longer just
a list of files, but now contains two fields:

    Files: List<String>
    Output: String

The latter is the output of the currently loaded project as determined
by the MSBuild API. This is usually a .dll or .exe file. The value is
stored when received in `fsharp-ac--output-file`.

The `fsharp-run-executable-file` function (default keybinding `C-c x`)
has been rewritten to suggest this value if it contains a .exe file. It
is also possible to specify arguments.
Merge pull request #739 from rneatherway/issue248

Project-aware selection of executable for emacs
Ensured FSharpSyntaxMode uses tryCast properly
Merge pull request #741 from 7sharp9/ImproveSyntaxModeTryCast

Ensured FSharpSyntaxMode uses tryCast to avoid NRE
Updated to Fantomas 1.5 and FCS 0.0.62
Updated to Fantomas 1.5 and FCS 0.0.62
Merge pull request #742 from 7sharp9/nugetupdates

Nuget package updates for Fantomas / FCS
Added ExtCore Nuget Package
Added FSharpActivePatternCase Xml Documentation
Remove namespace prefixes
Add LRU based cache for XmlFile with a  limit of 20 in cache

Remove some dependence on the util module in FSharp.CompilerBinding
which is copied from VFSPT and ExtCore, use ExtCore direct.
Remove dependency on AsyncMaybe in util.fs in favour of ExtCore
Make Utils internal to stop external use as we try to depreciate use of CompilerBinding
Add ExtCore open instead of copied code
Add ExtCore open instead of copied code

Refactor out Option.getOrElse which was in Util.fs