Changed the driver so that it contains a pointer for the root of the AST.
Merge branches 'master' and 'features/DriverChanges'