I'm going for 2) for now. With a few changes -Dorg.jboss.as.embedded=true tells ModuleXmlParsers to only load extensions once, and ServerControllerOperationHandler to use its own cl when initializing the marshalling SimpleClassResolver.
1) Sounds like a real pain :-)
3) Might be possible once we have a cleaner separation between client and server classes