Added ConversationSystem, DialogueSystem

    - ConversationSystem processes a TalkComponent, which is added by
      TriggerConversation effects. They are display-independent.

    - DialogueComponent processes DialogComponents, which can specify
      callbacks. Currently they all have the same style; this will
      be addressed in later commits.
Added ConversationDemo

Click on dialogues to choose / dismiss them.
Add a components.dialogue package, systems.dialogues package

Since there are now two types of dialogues (menu and line)
Cleaner, call-back free conversations.

Conversation advancement is done via polling. Removed logging.
Small bugfix in Selection
Merge pull request #664 from manuel-freire/conversation-support

Conversation support
CreateThumbnail action and test
Using stage batch instead of creating a new one.
Moved some cooldemo resources
Merge pull request #673 from anserran/thumbnailcreator

Create Thumbnail action, to create static images of model entities
Some utilities that will be used by the DemoBuilder. Can be skipped or quick reviewed
Implementation of the DemoBuilder. Guess no one will ever want to fully revise this, but I would appreciate if you could read the class description at least to see if its usage is understandable.
PlanesDemo. Perhaps the best way of understanding how to benefit from DemoBuilder is to run this demo from DemoLauncher (next commit) and then deep into PlanesDemo
Simple demo launcher
minor fix
BuilderUtils deleted. Its functionality has been moved to other places (see next commits)
getImageDimensions() moved to Platform. Only desktop impl provided for now
unzip() moved to new ZipUtils class. ZipUtils has also received zipping methods from Exporter.
Note: ZipUtils is placed in exporter for now, but should be moved elsewhere with no editor dependencies at some point.
ForceExit param added to EngineDesktop so demos can be launched several times
DemoBuilder:Most of the comments addressed and changes in the API reflected