allow adjacent > to touch for template specialization in c++11, allow = 0 for functions, add object base list support