Start using signals for click/unclick events.

This is better... Uncoupling all of those events and stuff...