Clean up SMB classes.

This change does some cleanup of SmbService, SmbFileSystem, and SmbProvider.
These changes include:
- Use AsWeakPtr() for SmbService.
- Add an SmbService::GetSmbProviderClient() helper method.
- Store provider_id_ as a member variable on SmbService.
- Remove provider_id as a parameter from SmbService::Unmount()
  - Remove provider_id from the UnmountCallbacks held by SmbProvider
    and SmbFileSystem

Bug: chromium:757625
Change-Id: Iaec9388b04f8bcd2aa781c654b00268ba0948aa2
Reviewed-on: https://chromium-review.googlesource.com/986629
Commit-Queue: Bailey Berro <baileyberro@chromium.org>
Reviewed-by: Zentaro Kavanagh <zentaro@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547439}
5 files changed