shill: Implement VPN service disconnect.

BUG=chromium-os:27461,chromium-os:27385
TEST=unit tests

Change-Id: I39c676acf041463a2266c08725f847499e31f5ea
Reviewed-on: https://gerrit.chromium.org/gerrit/17690
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/vpn_service.cc b/vpn_service.cc
index 44a4769..469feeb 100644
--- a/vpn_service.cc
+++ b/vpn_service.cc
@@ -24,9 +24,15 @@
 VPNService::~VPNService() {}
 
 void VPNService::Connect(Error *error) {
+  Service::Connect(error);
   driver_->Connect(this, error);
 }
 
+void VPNService::Disconnect(Error *error) {
+  Service::Disconnect(error);
+  driver_->Disconnect();
+}
+
 string VPNService::GetStorageIdentifier() const {
   NOTIMPLEMENTED();
   return "";