Dialog

Fixes:
#124 - gui elements now have their own style instance

#117 - There is no longer a "build" phase for the gui, and elements all have their own style so setting color works as expected

#111 - Created a dialog and builder interface to construct a simple dialog that mimics the functionality of the SDL_MessageBox

#108 - The gui was incorporated into the main system so the client code doesn't have to do as much work to get a simple gui implemented.  States now have a GUI member which is automatically registered by the input service when a state is resumed.  The State base class Render method handles calling gui->Draw and posts render operations to the screen.