Adds prototype NG driver apis

Includes an IPC system for out-of-process drivers so users won't have to recompile the registry to bring their own drivers. Also, drivers can potentially be written in any language with a functioning [libchan](https://github.com/docker/libchan) implementation.
Although *File from `os.NewFile` closes by `runtime.SetFinalizer`, it's better to close explicitly.
```go
defer childSocket.Close() 
```