Starting and stopping services is entirely possible through JMX - take a look at the monitoring and management section in the Administration Guide.
Where you are going to run into problems is creating / modifying services on the fly. Hot deployment and remote deployment of ESB packages is supported, so if you wanted you could generate a new ESB package and then deploy it out remotely to the server without restarting anything. I don't think that's the greatest idea, but it's certainly possible. Creating ESB services programmatically is not supported though.
I don't see the multiple SOAPProxy wsdl URL thing as an issue - you should be able to create multiple services for proxying and then route them in whichever direction you want to. If you want to get more dynamic than that, here's some ideas on how to leverage UDDI :
I'd also look into the properties service and maybe the webservice_proxy_routed quickstart example for more ideas on maybe how to do what you want in a different manner.