added presentation for IPC messaging prototype
Added IPC messaging prototype

This code is featured in the Let's Code: TimeTrack episode 6 video on
YouTube: http://youtu.be/Dbf7Hpqm5ew

This prototype combines the single instance prototype from the last
episode with inter process communication. The idea is, that the first
instance is the only instance of the application allowed to launch
fully. Howevery, a secondary instance can be used to send a message to
the master instance before exiting. This prototype implements this idea
by using a shared memory to serialize/de-serialize a string message and
a system semaphore to tell the master instance that a message is
waiting. Because the semaphore acquire() function is blocking and the
window of the master instance needs to stay responsive, the listener is
executed in a separate thread, only waking up when a message is
receaved, sending it to the main thread via a signal and then waiting
for the next message until the application quits. A special message is
the "exit" message that will trigger the exiting of the listener thread
in a clean fashinon. This message can be sent by an external, secondary
instance or by the main thread of the same instance to un-block the
listener and properly let it exit.