This adds label support to sockets much like nodes. This is a proof of concept to see if this approach is acceptable as changing socket name is complicated and hints at future nodes refactor.
This patch works by providing a new socket->label member.
This is only used when drawing the node and if it's not set then it falls back to the socket->name.
While this works well in theory, in practice it becomes an annoyance, this is currently the case with dynamic socket names for the new Voronoi procedural texture.
When playing around or experimenting with settings every time the socket name changes between different settings nodes are disconnected, and one must manually reconnect them again every time.
I'm not against it in principle, clearer socket names are definitely desirable, but not at the expense of keeping connections. Is there a way for socket names to change while still trying to keep current connections live?