Add weak window controller reference to ASAlarm

We occasionally have to find the window controller that corresponds to a
particular alarm. To do this we use a loop, that iterates all registered
window controller and locates the one we're looking for.

This is not an optimal way to do that. The solution is to use a week
reference in the alarm that points back to the window controller. This
removes a lot of error prone code that we no longer have to maintain.

Signed-off-by: Marcus Karlsson <mk@acc.umu.se>