More subclassing, API subclass now have a _API suffix to filename to
avooid confusion