Are all custom entities Content types?
You define an entity type in a class. Either a content or a config entity. Content entities can have bundles. These are defined in config entities (you need a separate class for this). Like all config entities bundles 
can be exported and imported in yaml files.

An example for a content entity type is Node. The node bundle is called Content Type. Internally Drupal uses node_type as machine name, which makes it clear that this is only used for nodes.