refactor and organized custom post type and admin into separate classes