add test for complex inheritance class.
restructure specs.
support complex inheritance.