reorder generated C++ classes in header file

closes github issue #43
finished the ObjCMessageExpr case
simpler for ObjCMessageExpr
added licenses
new test case
also test the not arrow case
added ObjCIvarRefExpr