Looking at these names again, I'm thinking we have three things:

1. the core report API
2. the extended report API for Cucumber (`CORE_REPORT_API + [:embed, :puts]`)
3. the user interface API for Cucumber (`[:ask]`) which only needs to be sent to the user interface, not all the formatters / reports

Oh and
4. the legacy formatter API

We *could* refer to (2) as the 'new formatter API', and go back to keeping all this stuff in `lib/formatters`, moving the older stuff into `lib/formatters/legacy`. That would give us a clear distinction between (1) and (2), and hopefully enough distinction between (1), (2) and (4).

I think at least we should talk about (1) as CORE_REPORT_API and then (2) as REPORT_API. That's probably clear enough, and certainly having a new name for this will make the change very clear to our users. Are we going to change the CLI too, and deprecate the `--formatter` switch in favour of `--report` ?