Previously, when using `ctrl+G` on a single node, the newly created node group
always had a flat list of inputs and outputs. This is somewhat annoying when the
node has a lot of inputs that were already organized in panels.
This patch makes it so that when grouping a single node, it will attempt to keep
the same node interface as the original node. This works for group nodes but
also for built-in nodes. For example, when creating a group from the Principled
BSDF node, the group will still have all the same panels. Default values are
taken from the node that is being grouped.
When grouping more than one node, the behavior is exactly the same as before. In
this case there isn't really an obvious way for how to create panels
automatically.
Internally, this works by taking by creating the new node group directly from
the node declaration.
Pull Request: https://projects.blender.org/blender/blender/pulls/139351