Changed the underlying way Location stores/shows potential actions.  Rather than a complex hierarchy of derived classes, it now uses a vector of a new Action struct, which includes a string for the associated command (e.g. wait until night, go to gate, talk to Nina) and a function pointer for a function that accomplishes that action.  This vector stores all available actions unique to an area, and when Location processes input, it checks the input against those Actions and calls the function in the correct struct (if its there).  The code is working as is, but improvements remain to be made. (see readme)