Setting up Database for Conversations and Generation

Added multiple files to set up for conversation structure and case generation.  Revolves around Dictionary, which can store any number of DictEntry's.  The Dictionary can retrieve, update, and add entries.  The journal contains a Dictionary representing the player's view of the game state.  NPC's contain a Dictionary (only themselves and those they have a connection to) that represents what they know.

playerAction's have a precondition which is checking the player knowledge, and a postState that updates the player knowledge in a specific manner.  One example is AskLocation, where you check if you know the NPC's location, and if you don't, update your knowledge to what they say their location is.