[Fixes #1528] Default reference assemblies made extensible in DefaultAssemblyProvider

@pranavkm @yishaigalatzer 
Each of these should be a different test case and the test name needs to reflect what the test is doing.
`CandidateAssemblies_ReturnsLibrariesReferencingOverriddenAssemblies`
`CandidateAssemblies_ReturnsEmptySequenceWhenReferenceAssembliesIsNull` etc