code: func NewDriver(adaptor *Adaptor) *Driver {
  	p := &Driver{
  		name:       "Pebble",
  		connection: adaptor,
  		Messages:   []string{},
  		Eventer:    gobot.NewEventer(),
  		Commander:  gobot.NewCommander(),
  	}
  
  	p.AddEvent("button")
  	p.AddEvent("accel")
  	p.AddEvent("tap")
  
  	p.AddCommand("publish_event", func(params map[string]interface{}) interface{} {
  		p.PublishEvent(params["name"].(string), params["data"].(string))
  		return nil
  	})
  
  	p.AddCommand("send_notification", func(params map[string]interface{}) interface{} {
  		p.SendNotification(params["message"].(string))
  		return nil
  	})
  
  	p.AddCommand("pending_message", func(params map[string]interface{}) interface{} {
  		return p.PendingMessage()
  	})
  
  	return p
  }
docs: // NewDriver creates a new pebble driver
  // Adds following events:
  //		button - Sent when a pebble button is pressed
  //		accel - Pebble watch acceleromenter data
  //		tab - When a pebble watch tap event is detected
  // And the following API commands:
  //		"publish_event"
  //		"send_notification"
  //		"pending_message"