Feature/go hci v3

V3 addresses most of the comments in previous revisions, except those related to interface between packages, such as 
 * conn.go: io.ReadWriterCloser()
 * advertiser interface between hci, server, l2cap.

TODO: docs, test, internal packages 

Note:
It requires linux kernel v3.14+ for the new USER_CHANNEL of HCI socket.
When a device is opened with user channel, it requires exclusive usage of the HCI interface.
So the HCI interface must be in "DOWN" status, or -EBUSY is returned.

ex: sudo hciconfig hci0 down

Revision history:
v0: 9225a4f
v1: dc97e44
v2: 8602eff