Fixed friend class decl for ast::builtin classes.

When compiling under clang 3.4, the compiler threw an error that various members were declared protected when accessing them from ast::BuiltinRepository, although `friend class BuiltinRepository` was declared. Changing that to `friend class ast::BuiltinRepository` fixed the issue (along with dropping the `namespace ast { class BuiltinRepository; }` forward declaration).
Merge branch 'master' into cg-array