refactoring class inheritance and adding initial post types