Moved generation code from CLI package to core.
Updated module dependencies, so that core is the entry point, instead of the CLI.