To make updates to core, modules and the like, I wrote a couple scripts and a config with a list of the siteroots. It would cd to each directory then run the drush (the CLI client/module) commands we wanted. Before that, we had each engineer grab a couple sites and run the commands after we deployed. Less than ideal.
Seems silly for common modules or core updates.
First, the sites would have to have some kind of knowledge of each other.
If you're looking for structural sharing, you can export views individually, but the majority of the core settings can be exported as a module with the features module. Users can be shared through the use of shared tables in the settings.php file.
If you're looking for content movement/sharing, perhaps Organic Groups is worth a look.
(edit: forgot the letter y)
When I left we were making some very good progress using Apache Solr as a backend for cross-site Views and queries. We were already using it for search, so it added minimal overhead. I believe they've since rolled it out. I should bug them to open source the code. It was looking pretty slick.