Coding style cleanup: const and vecptr.
Pointer type cleanup: Use ASTPointer only for AST nodes and shared_ptr for type
pointer.
Access modifier cleanup.
Cleanup of copyright headers.