VOL-1497 : Add more control to kv/memory access

- Added kv locking mechanism (etcd only)
- (watch) control path access whenever possible
- (watch) use a transaction for updates and merge with memory
- cleaned up vendoring
- misc changes to fix exceptions found along the way

Amendments:

- Copyright header got removed in auto-generated file
- Changed default locking to false for KV list operation
- Updated backend api to allow the passing of locking parameter

Change-Id: Ie1a55d3ca8b9d92ae71a85ce42bb22fcf1419e2c
diff --git a/vendor/go.uber.org/atomic/.travis.yml b/vendor/go.uber.org/atomic/.travis.yml
index f1ce95a..5895722 100644
--- a/vendor/go.uber.org/atomic/.travis.yml
+++ b/vendor/go.uber.org/atomic/.travis.yml
@@ -3,9 +3,9 @@
 go_import_path: go.uber.org/atomic
 
 go:
-  - 1.5
-  - 1.6
-  - tip
+  - 1.7
+  - 1.8
+  - 1.9
 
 cache:
   directories:
@@ -18,4 +18,6 @@
   - make test_ci
   - scripts/test-ubergo.sh
   - make lint
-  - travis_retry goveralls -coverprofile=cover.out -service=travis-ci
+
+after_success:
+  - bash <(curl -s https://codecov.io/bash)