Dynamic tree of Java objects encapsulates hard-drive and Jar/Zip files (and their inner files) and Java objects all the same way. Create new ways of communication as executable Jar files, like a paint program that creates/uses paint programs as tools