Use g_weak_ref_init/_clear() on structure-allocated GWeakRef-s

Probably not related to bug 698342 that much, but I was told that
the right thing to do is to use g_weak_ref_init/_clear() on
structure-allocated GWeakRef-s, the same way it is done for GMutex
and other structures.