of course you can put your own design and the icons in your own extension. If you install the new ez version 3.9.1 with the ezwebin extension you have an example for a design extension.
The content classes are stored in the database! You can create a package included the contentclasses for your extension, and store this under your extension anywhere.
Then you can easily import the required contentclasses, if you use your extension in another ez installation.
"You can create a package included the contentclasses for your extension, and store this under your extension anywhere."
Can you point me to some documenation on how I do this?
Edit: Of course, as you said - what I want to do is to make a package, not an extension. This way you could install eZ Publish with my package and be up and running with my content classes and design right? I can't find the documentation for this.