VOL-1460 Updated core to use voltha-protos instead of local protos
Moved protos to python directory in order to maintain functionaly of containers built there.
Added capability to do local builds of protos
Added instructions on running dep ensure for getting protos.
Updated github.com/golang/protobuf version to v1.3.1

Change-Id: Ia6ef55f07f0d5dcb5b750d7c37b21b71db85bfc4
diff --git a/python/protos/inter_container.proto b/python/protos/inter_container.proto
new file mode 100644
index 0000000..5896f13
--- /dev/null
+++ b/python/protos/inter_container.proto
@@ -0,0 +1,121 @@
+syntax = "proto3";
+
+import "google/protobuf/any.proto";
+import "openflow_13.proto";
+import public "logical_device.proto";
+
+
+option go_package = "github.com/opencord/voltha-protos/go/inter_container";
+
+package voltha;
+
+message StrType {
+    string val = 1;
+}
+
+message IntType {
+    int64 val = 1;
+}
+
+message BoolType {
+    bool val = 1;
+}
+
+message Packet {
+    bytes payload = 1;
+}
+
+message ErrorCode {
+    enum codes {
+        UNSUPPORTED_REQUEST = 0;
+        INVALID_PARAMETERS = 1;
+    }
+}
+
+message Error {
+    ErrorCode code = 1;
+    string reason = 2;
+}
+
+enum MessageType {
+    REQUEST = 0;
+    RESPONSE = 1;
+    DEVICE_DISCOVERED=2;
+}
+
+message Header {
+    string id = 1;
+    MessageType type = 2;
+    string from_topic = 3;
+    string to_topic = 4;
+    int64 timestamp = 5;
+}
+
+message Argument {
+    string key = 1;
+    google.protobuf.Any value = 2;
+}
+
+message InterContainerMessage {
+    Header header = 1;
+    google.protobuf.Any body = 2;
+}
+
+message InterContainerRequestBody {
+    string rpc = 2;
+    repeated Argument args = 3;
+    bool response_required = 4;
+    string reply_to_topic = 5;
+}
+
+message InterContainerResponseBody {
+    bool success = 1;
+    google.protobuf.Any result = 3;
+}
+
+message SwitchCapability {
+    openflow_13.ofp_desc desc = 1;
+    openflow_13.ofp_switch_features switch_features = 2;
+}
+
+message PortCapability {
+    LogicalPort port = 1;
+}
+
+message DeviceDiscovered {
+    string id = 1;
+    string parent_id = 2;
+    string device_type = 3;
+    string publisher = 4;
+}
+
+message InterAdapterMessageType {
+    enum Types {
+        FLOW_REQUEST = 0;
+        FLOW_RESPONSE = 1;
+        OMCI_REQUEST = 2;
+        OMCI_RESPONSE = 3;
+        METRICS_REQUEST = 4;
+        METRICS_RESPONSE = 5;
+    }
+}
+
+message InterAdapterHeader {
+    string id = 1;
+    InterAdapterMessageType.Types type = 2;
+    string from_topic = 3;
+    string to_topic = 4;
+    string to_device_id = 5;
+    string proxy_device_id = 6;
+    int64 timestamp = 7;
+}
+
+message InterAdapterResponseBody {
+    bool status = 1;
+    google.protobuf.Any body = 2;
+}
+
+message InterAdapterMessage {
+    InterAdapterHeader header = 1;
+    google.protobuf.Any body = 2;
+}
\ No newline at end of file