Some cleanup of IL temps created when emitting addresses. Results of EmitAddress should not be ignored.

Generally C# allows only taking address of expressions that are "addressable". In rare cases an expression is not directly addressable and a temp must be created. However generally we know exactly the lifetime of such reference and the corresponding temp.
Not knowing the life-time and leaking a local intentionally is extremely rare and only happens in specific kinds of synthesized code, so we know it is safe thing to do.

In all other cases the temp is either unexpected (assert was added) or its lifetime is known (release code was added).
 (changeset 1311067)
Removing skipped test (changeset 1311108)
Clean up InternalsVisibleTo in Workspaces.csproj:

1) Remove references to projects that are very, very gone.
2) Delete comments that were no longer attached to what the used to be attached to. (changeset 1311189)
C# EC: More Binder/Rewriter fixes

We were constructing the binder chain using the source symbol original definitions.  Instead, we should have been constructing them using the source symbols constructed with the target type parameters.  Otherwise, source type parameters can end up in the bound tree (e.g. from the return type of another method in the source type). (changeset 1311390)
Removed FeatureId

our Logger used to get both FeatureId and FunctionId. FeatureId used to be used to control a group of functionId.

now, I am flattening them so that we can group functionId by its name rather than using both FeatureId and FunctionId. (changeset 1311395)
cleaned up functionId (changeset 1311706)
Fix for bug 995206: Crash (KeyNotFoundException) in Microsoft.CodeAnalysis.SemanticModelWorkspaceService.SemanticModelWorkspaceServiceFactory.SemanticModelService.CompilationSet.RemoveOldTreeFromMap

Fix the scenario where a document ID exists in old project but not in the new project. Don't assume that the new map has a key for all the documents in the old compilation.

 (changeset 1311724)
707780-Move newly detected warning case to new warning ID (changeset 1311859)
Bug 998724: VB symbol analyzer for namedtypes being triggered for types not defined in source

Fix is to ensure that we call symbol analyzers only for user defined source symbols. (changeset 1311956)
CR feedback on changeset #1311390. (changeset 1312005)
Reduce the variety of optimization related compilation option values used in tests to: Release, DebuggableRelease and Debug.

By default tests should use Release, which enables all optimizations.
PDB tests should mostly use Debug.
We should have targeted tests for DebuggableRelease, for optimizations that are selectively disabled to improve debuggability of release builds.

   (changeset 1312277)
refactored Logger to support chaining better

now we have AggregateLogger that we can combine multiple logger together more cleanly. (changeset 1312345)
small cleanup on ILogger

re-ordered a parameter and added LogMessage to LogBlockEnd. (changeset 1312594)
Porting the "Dictionary initializer" from an old feature branch related to the now cut ".$" operator.

===
Introducing Dictionary initializers

The syntax is like this:

        var l = new Cls1()
        {
            ["aaa"] =
            {
                ["x"] = 1,
                ["y"] = 2
            },
            ["bbb"] =
            {
                ["z"] = 42
            }
        };

===
Also fixes #13
***NO_CI***
 (changeset 1312685)
Address CR feedback: Rename a bunch of async methods in the AnalyzerDriver to have "Async" suffix. (changeset 1312696)
Initial refactoring to support reuse and clearing of state machine field slots associated with all kinds of captured locals (synthesized or user defined). (changeset 1312733)
Reduce the variety of optimization related compilation option values used in tests to: Release, DebuggableRelease and Debug.

Rationalize DebuggableAttribute values.
 (changeset 1312766)
Change Options module to TestOptions class in VB, to match C#. (changeset 1312908)
Fix 982479 (incorrect bound node for dynamically bound name in nested object initializer) (changeset 1312945)
Fix for bug 798375: Rename : Microsoft.CodeAnalysis.VisualBasic.Simplification.VisualBasicSimplificationService.Expander.VisitSimpleName

While trying to rename a parameter of a lambda field initializer, the speculative model created for references to the parameter within the lambda body was being passed in a position within the lambda. As chaining of speculative models is not supported (see won't fixed bug 797122), we cannot create a speculative model for individual statements within a lambda initializer. We need to speculate on the entire field initializer. The rename rewriter was correctly walking up the nodes to find the topmost node that can be speculated, i.e. the field initializer syntax; however it wasn't adjusting the position for speculation causing the new field initializer to be speculated in context of the lambda body rather then the entire field initializer. (changeset 1313031)