Don't set geometry dirty when setting alpha for surface effect
Prevent Signal from being used after delete
Fix write after delete in Signal

Signed-off-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Edited-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Move Signal's functor classes inside it

Signed-off-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Edited-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Implement window switching logic in the compositor

Window switching logic is implemented by the compositor which in turns
tell the shell to display a window switching overlay.

Issue: #42