Started new program structure and reorganized a bit separating
Statements from Expressions.  Program will be focus of a program launch,
with PrologProgram being the prolog implementation of Program.
VariableExpression will keep track of current program information.  The
statements will perform their individual duties.