Refactoring Delegates system & compiler fixes

Basically I just added another layer of abstraction to delegate creation.
That's to hide most of the casting around of generic types.

Also removed compiler errors.
Project now running on c++11 standard ...

Factored out event parameter for delegate types,
It's really not required.
Adding rudimentary chatbot chat handler

renamed simplecommands::execute to handleChat