Port MicrosoftAccount middleware from Katana.

#41 

FYI: Microsoft Account has restrictions that make the samples difficult. See samples/SocialSample/Startup.cs
I'm wondering if we should make these endpoint urls or any other applicable members public. In case endpoint urls change or any of these parameters change, users will have a work around till we ship a fix. If the contracts from external providers change we cannot do anything ofcourse.