yes, i did implement pretty much the same thing... i created a new user, setup permissions for what i wanted that "view" to see and then made a wrapper script like this:
<?php
require(dirname(__FILE__) . '/modules/core/classes/GalleryCapabilities.class');
GalleryCapabilities::set('anonymousUserId', 81445);
GalleryCapabilities::set('defaultAlbumId', 297);
GalleryCapabilities::set('cookieSuffix', '_V');
define('GALLERY_MAIN_PHP', basename(__FILE__));
require(dirname(__FILE__) . '/main.php');
?>
Then changed a few key places in the code to use this alternate user as the guest and the given default album. It works pretty well. The problem is there are many places in the code that check for "the" guest user and it isn't always clear how to handle things when there are multiple guests. One big example is fast-download files.. these are completely handled by whether or not "the" guest user has access to an item. Anyway, I think there is some potential to such a setup but it hasn't been fully explored.
A wrapper to simply change the active user and then go through the normal main.php would certainly be easier, but then you'd see a Logout link as you're not "the" guest.