Enable C++11 on grammar subtarget
Add beginnings of the type hierarchy.