diff --git a/ofagent/main.py b/ofagent/main.py
index 5b21692..1d6149e 100755
--- a/ofagent/main.py
+++ b/ofagent/main.py
@@ -16,14 +16,10 @@
 #
 import argparse
 import os
-import sys
 import yaml
+from twisted.internet import reactor
 from twisted.internet.defer import inlineCallbacks
 
-base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
-sys.path.append(base_dir)
-sys.path.append(os.path.join(base_dir, '/ofagent/protos/third_party'))
-
 from common.utils.dockerhelpers import get_my_containers_name
 from common.utils.nethelpers import get_my_primary_local_ipv4
 from common.utils.structlog_setup import setup_logging
@@ -216,7 +212,7 @@
         self.log.info('starting-internal-components')
         args = self.args
         self.connection_manager = yield ConnectionManager(
-            args.consul, args.grpc_endpoint, args.controller).run()
+            args.consul, args.grpc_endpoint, args.controller).start()
         self.log.info('started-internal-services')
 
     @inlineCallbacks
@@ -225,10 +221,9 @@
         self.log.info('exiting-on-keyboard-interrupt')
         self.exiting = True
         if self.connection_manager is not None:
-            yield self.connection_manager.shutdown()
+            yield self.connection_manager.stop()
 
     def start_reactor(self):
-        from twisted.internet import reactor
         reactor.callWhenRunning(
             lambda: self.log.info('twisted-reactor-started'))
 
