Fix race condition in metadata reader

See http://roslyn.codeplex.com/workitem/299

In the case where a PEReader was backed by a memory-mapped file,
concurrent calls to PEReader.GetMetadataReader were unreliable.
They  led to concurrent calls to MemoryMappedFile.CreateFromFile
on the  same FileStream, which is not safe.

The fix is to use the same streamGuard lock used elsewhere to
avoid concurrent use of the stream.
Fix spelling error in rarely used pre-release API

MetadataTokens.ExportedTypeHandle was misspelled with two o's.

This is of course a breaking change, but this API is still in
pre-release. Furthermore, there are no usages at all of this API
in any partner code that I can find and it is unlikely to be used
yet elsewhere. The API is in the Ecma335 sub-namespace for getting
handles from raw metadata tokens, but most consumers would find
ExportedTypes via the main token-agnostic API.
ImmutableArray<T>.Builder.Sort should not create Comparer instance if count<=1
Tweaking Sort(int index, int count, IComparer<T> comparer) to check for count instead of Count. Checking for count > 1 will ensure both of these
i. The no. of elements intended to be sorted is > 1
ii. The underlying array contains > 1 elements
Initial Commit of System.Threading.Tasks.Dataflow
Update README.md
Add clarifying comment (responding to PR feedback)
Merge pull request #189 from richamsft/master

ImmutableArray<T>.Builder.Sort should not create Comparer instance
1. GoodbyeHello() 2. Invert FEATURE_TRACING
Cleanup PAL comments.
Merge pull request #186 from nguerrera/mdreader-fixes

Fix race condition and spelling error in metadata reader
Merge pull request #192 from Priya91/dataflow

1. GoodbyeHello() 2. Invert FEATURE_TRACING