buffet: Move  ApManagerClient out of libweave

libweave will rely on implementation provided by interface
weave::Network.

BUG=brillo:1247
TEST='FEATURES=test emerge-gizmo buffet'

Change-Id: I36b8d8af21d461d53815c214f18586cd3afcce5c
Reviewed-on: https://chromium-review.googlesource.com/290101
Reviewed-by: Vitaly Buka <vitalybuka@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
Trybot-Ready: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/shill_client.h b/buffet/shill_client.h
index 06c1be5..2538674 100644
--- a/buffet/shill_client.h
+++ b/buffet/shill_client.h
@@ -22,11 +22,13 @@
 
 namespace buffet {
 
+class ApManagerClient;
+
 class ShillClient final : public weave::Network {
  public:
   ShillClient(const scoped_refptr<dbus::Bus>& bus,
               const std::set<std::string>& device_whitelist);
-  ~ShillClient() = default;
+  ~ShillClient();
 
   void Init();
 
@@ -38,6 +40,8 @@
                         const base::Closure& on_success,
                         chromeos::ErrorPtr* error) override;
   weave::NetworkState GetConnectionState() const override;
+  void EnableAccessPoint(const std::string& ssid) override;
+  void DisableAccessPoint() override;
 
  private:
   struct DeviceState {
@@ -105,6 +109,8 @@
   std::map<dbus::ObjectPath, DeviceState> devices_;
   weave::NetworkState connectivity_state_{weave::NetworkState::kOffline};
 
+  std::unique_ptr<ApManagerClient> ap_manager_client_;
+
   base::WeakPtrFactory<ShillClient> weak_factory_{this};
 
   DISALLOW_COPY_AND_ASSIGN(ShillClient);