After lifting under the hood with Buddypress themes, I'm facing this issue now.

I'd prefer it if the functiionality in themes was deselectable in files that could either be deleted or simply not loaded (to remove load time issues). That takes greater effort and pre-thought, but it would be appreciated. If functionality in themes were essentially plugins for themes, they could be appropriately deactivated. It would also facilitate themes having an api for plugins that others could build from.

In my case, I'm taking a BP theme, putting it in a Hybrid theme and then changing the functionality pretty extensively through plugins that will need to act differently with the theme.

Although I hated them at first, I've grown to like hooks and unless someone has a better idea, I'd rather look through functions.php than search all over creation to fix stuff.