WindowCompostior: use ObjectWeakPtr to handle focus and mouse areas
So they get automatically nullified when the handled objects are destroyed,
also Make Area to unset the key-focus paths on destroy.. Fixes: https://bugs.launchpad.net/bugs/1045059. Approved by Marco Trevisan (Treviño).