Two of my hosts use cPanel for backend procedures so I'll have a quick stab from a "cPanel perspective".
Each domain gets it's own folder. Additionally it can have it's own user if you like.
The best way to describe this is to imagine your current Cpanel setup. You have "one account" and "one user". That one account has access to all the folders under that account. At Dreamhost you can set yourself up to mimic that exact behaviour, or you can take some - or all - of those domains, subdomains, and addons and create them under their very own user account, keeping them entirely separate from what you'd term your "main account". In cPanel terms, they would actually be "separate accounts".
They can be named anything you like. Each entity has it's own folder.
You can install your own if you like.
No, unlike the common "cPanel account" which uses one domain as "the account", your account here is unrelated to any particular domain. You can add, change or remove any domain you wish to and all others will remain functional.
Yes, using Domain Mirroring.
They can function much like you would consider a "main domain" under cPanel. You can have them hosting their own content, have them mirror another sub/domain, have them redirect to different sub/domains, etc. Everything possible in a Network environment is available to each and every entity.
The Dreamhost environment is "more UNIX" than a cPanel host. It is an excellent system imho, especially where security is concerned.
If at any stage you run into problems this forum has a half-dozen regulars who are willing (and very able) to solve just about anything you care to throw at them. They're a very switched-on group of webmasters.
Maximum Cash Discount on any plan with MAXCASH