Fixed the Hub Auth portion of the Sample project

- By calling MapSignalR later we can ensure SignalR runs after auth
  middleware and HttpApplication.AuthenticateRequest.

#3152
GoneWithARace - prevent a client failure caused by a race

When building Url we checked whether connection.ConnectionToken, connection.MessageId and connection.GroupsToken were null before appending them to the Url. However there was a small window in which these properties could be set to null in a different thread if a Disconnect happened causing the client to fail with the ArgumentNullException. Assigning the property value to a local variable and using the variable throughout the method prevents from the failure.

Fixes #3211, #3212
OutOfBodyExperience - removing IFrame from body

For foreverFrame transport SignalR appended the iframe as the last child of the body node. However some libraries (e.g. jQuery UI) move nodes inside the body which causes the iframe to reload which results in sending a "connect" request even though the transport has already been started. Because we cleaned up some things after sending the original "connect" request the second "connect" request may cause "Object expected" exceptions. The fix is to move the iframe outside the document body node so it is less likely to be touched/moved by the user's code.

Fixes #2795
Merge branch 'bug-2795' into dev
Initiate /start request after a transport is selected in the JS client

- This is how the .NET client already behaves

#3104
Remove unnecessary Trace property from MessageBus
fix for bug #3166

Changed ObservableDbOperation to look for Updates instead of Inserts
based on changes to send.sql
Merge branch 'release' into dev
Update to JSON.NET 6.0.4
Fix JSON.NET reference in Silverlight samples
Merge branch 'release' into dev

Conflicts:
	nuspecs/Microsoft.AspNet.SignalR.Client.nuspec
	samples/Microsoft.AspNet.SelfHost.Samples/packages.config
	samples/Microsoft.AspNet.SignalR.LoadTestHarness/packages.config
	samples/Microsoft.AspNet.SignalR.Samples/packages.config
	src/Microsoft.AspNet.SignalR.Client.Portable/packages.config
	src/Microsoft.AspNet.SignalR.Core/packages.config
	src/Microsoft.AspNet.SignalR.Crank/packages.config
	tests/Microsoft.AspNet.SignalR.Tests.Common/packages.config
Update JSON.NET to 6.0.4 in .NET client for wpa81
Fixing WP8 sample references after the update of Json.Net
Fixing WP8 sample references after the update of Json.Net
BetterPath - updating path to MSBuild to use v12 required to build Windows Store projects.
Merge branch 'release' into dev
Updating nuspec for Stackexchange
AllYourGiftCardsBelongTeMe - fixing random ERROR_SHARING_VIOLATION in tests that use HttpListener

Functional tests using HttpListener tend to fail randomly with the "System.Net.HttpListenerException : The process cannot access the file because it is being used by another process" exception. This error indicates that the port a test is trying to use is already in use. Tests choose ports randomly from the 8000 to 9000 range. The problem is that on some machines some ports from this range are already in use e.g.:

The following two tests failed with the exception from above:

ConnectionFacts.RequestHeadersCanBeSetOnceConnected.HttpListener.LongPolling.89.test.trace.log                   --> HttpListener url: http://localhost:8678
ConnectionFacts+Start.ManuallyRestartedClientMaintainsConsistentState.HttpListener.Websockets.742.test.trace.log --> HttpListener url: http://localhost:8675

However netstat -ano shows that ports 8675, 8677, 8678 were already in use
TCP    10.74.232.16:8675      10.74.232.80:80        ESTABLISHED     3436   WindowsAzureGuestAgent
TCP    10.74.232.16:8677      10.74.232.80:80        ESTABLISHED     2944   WaAppAgent
TCP    10.74.232.16:8678      168.62.33.142:443      ESTABLISHED     3436   WindowsAzureGuestAgent

The fix is to verify if the port is in use before using it and if it is choose a different port from the range
Remove new usages of async/await on the server

- This change is meant to help avoid potential deadlocks caused by
   attaching to the PreSendRequestHeader event

#3176
Avoid delegate allocations introduced by removing async/await