set_callback_indirect
Description:
Sets the callback function storing the data as a refcounted callback "object".
 This is used internally. Note that calling set_callback_indirect assumes an initial reference count on 
        callback_data, and thus callback_funcs->unref will eventually be called once more than callback_funcs->
      ref.
It is safe to call this function multiple times on a source which has already been attached to a context. The changes will take effect for the next time the source is dispatched after this call returns.
Parameters:
| this | 
           the source  | 
      
| callback_data | 
           pointer to callback data "object"  | 
      
| callback_funcs | 
           functions for reference counting   |