Port Facebook middleware from Katana.

Depends on https://github.com/aspnet/HttpAbstractions/pull/113
TODO: CoreCLR WinHttpHandler does not yet support custom server cert validation.
Some of the katana middlewares expose something like OpenIdAuthenticationDefaults.AuthenticationType, WsFederationdefaults.Authentication type. Do we plan to consolidate it now in vnext? In other words do we want a FacebookAuthenticationDefaults.AuthenticationType?