All the functionality you need to build a custom post type, wrapped in one big, sexy, extendable class.