Get rid of confusion between `index.js` and `wpcom+xhr.js`

These changes should not affect the public API or its behavior:

- Since XHR is the default method for most users, the code to provide this default lives in `index.js`.
- The actual implementation of `WPCOM` is now in `wpcom.js`. This means you can do `require('wpcom/wpcom')(myRequestFunction)` to pass in your own implementation without any dependencies on the `wpcom-xhr-request` module.

I recommend looking at the end result of this PR rather than the diff since I moved the files around. Overall the code is shorter than the previous implementation.

FWIW this logic doesn't quite seem the same as below in `+xhr.js`'s `sendRequest()` override.

Also, this removes the `setToken()` function that was there before. Not a huge deal to me, but just noting that it's breaking API change so we might need to bump major semver version.