Decouple Renderer from the Nuxt class
[issue link]In short: we should move the Renderer out of the Nuxt class to provide a better code flow.
Currently Builder takes a Nuxt instance as argument, and Nuxt embeds Renderer. However, this doesn’t work well because Renderer requires working build artifacts to work. As a result, we end up leaving the Renderer half initialized and later signal the completion of the build:
This kind of data flow makes enhancing the renderer harder. Instead, what we should be doing is to separate the Renderer class, making it similar to the form of the Builder. This is compat breaking, so it’s best to do the refactor while 2.0 is still being dev.