Added the signal-slot protocol in the master branch