Enhance: add sysInterProfileEvent to enable inter-profile signalling

This experimental system allows a script in one profile to:
raiseInterProfileEvent( data ) where data is at least one number, string
or boolean value that can be detected by a declared sysInterProfileEvent
event handler in all active profiles.  The host order for reception of
the event is maintained in a circular manner so that the profile that
emitted the event is the one to receive it last.  The first argument
received after the sysInterProfileEvent one is the name of the sending
host, then the subsequent ones are the arguments supplied to the invoking
function.

Note that I have added explicit support to the TEvent class for booleans
{which are stored as the literal QString values "true" and "false", when
decoding C logic ought to be used in that anything that is NOT "false" is
"true"} - not the most efficient storage method but straightforward to
debug.

Due to the limits of my understanding of Lua I'm not entirely sure about
the "varargs" processing of the reception of more than one "value" from
the event system though I understand that it has varied over the Lua 5
series of the language.

Also, as the data to be sent as an event has to be passed up to the main
mudlet class this does have to lock some resources whilst the event is
propagated to the other profiles which means it probably isn't a good idea
for a high volume of traffic.  It, by definition and design, also breaks
the sand-boxing that normally exists between separate profiles.

It might be worthwhile to formalise a means to transfer lua tables via this
method but that would need more work in areas where I am not personally
confident.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>