Mapping for errors

Changed GetLastError to return VirError instead of a simple string.
VirError helps getting easy access to the error code, level and domain.
VirError implements the error interface for easy use.
Comment out VIR_ERR_CPU_INCOMPATIBLE
Added in 1.2.6, not available in 1.2.4
Domain events API implementation

The big amount of callbacks from libvirt C API has been mapped to
different details structs in the Go API.
Avoid libvirt outputting to stderr