Hiding the site domain name from the content writers
As long as you have your server configured properly (ie, have your ServerName and ServerAlias directives set right for Apache), then this should work our of the box as long as you don't explicitly set the cookie domain or base URL in your settings.php.  A potential complication is if you have any rewrites for canonical URLs on your site.

However, I think your best approach is to use the Domain Access module to run two sites out of the same installation.  Have one affiliate be for the live domain, and the other affiliate be for the authoring domain.  Then separate the content / themes as needed.  When content is OK, just move it from the authoring affiliate to the live affiliate.