Resolving problem with incorrect appRelativeUrl when SignalR is using with reverse proxy

That commit fixes problem when SingnalR.Self.Hosting is listening for connection under: /events But reverse proxy has a separate url, e.g.: /virtualpath/events. "negotiation" request returns Url: /events which will be set in appRelativeUrl and all further requests will be passed to /events instead ofr /virtualpath/events. 

The fix checks if the Url is absolute path then it uses connection.url; otherwise the old logic is used. 

See https://github.com/SignalR/SignalR/pull/580 for repro steps