Adds new convenient method get_context() to GoclBuffer
Adds new method idle_unref() to GoclEvent

This method calls g_object_unref() on the GoclEvent in an idle function.
Its purpose is to allow operations on a GoclQueue to guarantee that the
generated event doesn't need to be explicitely destroyed by the application.
So if an application wishes to ignore the returned event, there is no risk
on leaving the event undestroyed.

On the other hand, this causes that if an application wants to keep a reference
to a returned event, it must explicitely call g_object_ref() on it, or otherwise
call gocl_event_then(), which in turn increases the reference count.

This method is not supposed to be ever called by applications directly.
Schedules an idle unref on the returned event in run_on_device() of GoclKernel
Adds a clarification comment to GoclEvent header file
Adds asynchronous methods build() and build_finish() to GoclProgram