Fix for RavenDB-927

Fix for [RavenDB-927](http://issues.hibernatingrhinos.com/issue/RavenDB-927). I've confirmed it fixes Smuggler exports and expect it to fix replication issue also (hard to set up a test for replication because it relies on using an external OAuth provider)

Moved BasicAuthenticator down to Raven.Abstractions.OAuth. As a result, removed dependency on HttpJsonRequestFactory. BasicAuthenticator constructor now takes a bool enableBasicAuthenticationOverUnsecuredHttp param.

BasicAuthenticator is now used in the HttpRavenRequestFactory but I wasn't sure how to get the value for the enableBasicAuthenticationOverUnsecuredHttp parameter from that location (in the DocumentStore class, it's read from jsonRequestFactory.EnableBasicAuthenticationOverUnsecuredHttpEvenThoughPasswordsWouldBeSentOverTheWireInClearTextToBeStolenByHackers).

So there are a couple of outstanding TODOs in BasicAuthenticator. If you can suggest a way to read value, happy to send additional pull request.