ZENGINE: Create clone member function for ResultAction class
ZENGINE: Convert Puzzle to a class

It needed a copy constructor and destructor to handle the heap memory ResultActions
ZENGINE: Create mutators for _tiltOptions
ZENGINE: Modify Criteria parsing to handle empty Criteria
ZENGINE: Create Control class
ZENGINE: Move the criteriaMet bool outside of the loop

Only fire off the Results of ALL of the criteria are met
ZENGINE: Add 'reverse' to _tiltOptions and _panoramaOptions to handle Control options
ZENGINE: Rename parseResult() to parseResults()
ZENGINE: Modify Control parsing to use new Control class structure
ZENGINE: Create ScriptManager member function to change location
ZENGINE: Make ActionNode::process() pure virtual
ZENGINE: Move Puzzle logic into a .cpp file
ZENGINE: Move CriteriaOperator, Criteria, and StateFlag inside the Puzzle class