Fixes to byte-level mem events

Some minor problems are getting fixed:
1. byte-offset wasn't matched properly as gfn needed shifting. 
2. calling vmi_clear_event in a byte-level callback caused ghashtable issues as the callback was issued in a middle of a ghashtable iteration.
3. call driver_set_mem_access directly during vmi_destroy as there is no need to double-check if these events are present, the call is initiated by a ghashtable iteration already. Doing this fixes glib critical warnings.