VOL-1255: Fixed an issue with the proxy implementation

- Had to change the model slightly to mimic a polymorphic behaviour

Change-Id: I12017cdfedf5c0ed05243245aa2a811556222e0f
diff --git a/db/model/proxy.go b/db/model/proxy.go
index 3e33849..1939596 100644
--- a/db/model/proxy.go
+++ b/db/model/proxy.go
@@ -48,14 +48,14 @@
 }
 
 type Proxy struct {
-	Root      *Root
-	Node      *Node
+	Root      Root
+	Node      Node
 	Path      string
 	Exclusive bool
 	Callbacks map[CallbackType]map[string]CallbackTuple
 }
 
-func NewProxy(root *Root, node *Node, path string, exclusive bool) *Proxy {
+func NewProxy(root Root, node Node, path string, exclusive bool) *Proxy {
 	callbacks := make(map[CallbackType]map[string]CallbackTuple)
 	p := &Proxy{
 		Root:      root,