> 1. Would it be possible to supply custom icons for use as actors in diagrams?
It's not possible yet.
Other users have made a similar request, so we may implement it in some future.
> 2. Could the SVG structure be grouped by diagram element rather than in one flat group so that it's easier to post-process and replace items? (Assuming #1 is not practical)
This is easy to implement, at least for StickMan for starting.
You'd like us to use <g>..</g> in SVG, right?
We could do it very quickly *but* the post-process to replace items should use the same dimension as the actual "StickMan"
> 3. Where in the codebase should I start to try and implement #2? (Assuming #2 is viable but not important to you)
The code base is here https://github.com/plantuml/plantuml/blob/master/src/net/sourceforge/plantuml/skin/StickMan.java
But we would process #2 if you need to.
> 4. Do you have any better ideas for me? :)
Another option would be to patch https://github.com/plantuml/plantuml/blob/master/src/net/sourceforge/plantuml/skin/StickMan.java
(in the draw() method)
so that you draw your desired stickman.
The code is quite simple here, so minimum Java knowledge should be ok.
You could then send us back your code so that we propose several "StickMan" in the future.
> I feel sure future requests will be about other symbols used so it would be especially helpful if answers weren't overly specific to the "actor" symbol.
Yes, option #1 for all symbol should be the right solution.
But we have too many change in progress right now so we cannot open (yet) a new front here :)