func (c *Context) TextQuery(query string) (*Result, *Outcome, error) {
	c_query := C.CString(query)
	defer C.free(unsafe.Pointer(c_query))
	c_result, err := C.wit_text_query(c.context, c_query, c.access_token)
	if err != nil {
		return nil, nil, err
	}
	defer C.free(unsafe.Pointer(c_result))
	return c.parseResult(C.GoString(c_result))
}
TextQuery allows querying wit.ai service with a text query string.
It returns the complete result, the first outcome or a non-nil
error if one occurs.

The result is returned in a blocking manner.
package witai
import "C"
import (
	"encoding/json"
	"syscall"
	"unsafe"
)
var (
	callback func(string)
)
type Context struct {
	context      *C.struct_wit_context
	access_token *C.char
}
func NewContext(dev string, access_token string, v Verbosity) (*Context, error) {
	c_access_token := C.CString(access_token)
	c_device := C.CString(dev)
	defer C.free(unsafe.Pointer(c_device))
	context, err := C.wit_init(c_device, C.uint(v))
	if err != nil {
		switch e, ok := err.(syscall.Errno); {
		case !ok:
			return nil, err
		case e == syscall.ENOENT:
			break
		default:
			return nil, err
		}
	}
	return &Context{
		context:      context,
		access_token: c_access_token,
	}, nil
}