Many people find that there are buttons they wish were in the visual editor but aren't there. Plugins like TinyMCE Advanced do a good job of expanding the default toolset, but don't offer easy ways to create custom buttons. Examples of custom buttons:
* <p align="right"> (instead of using style=)
* <p class="translation">
* <li class="inventory_item">
* <p class="note">
etc. Obviously there is an infinite number of possibilities. Having buttons for these things would not only be more convenient than entering them manually it would also allow really unskilled users to use these classes in their posts.
The problem is that even if you understand PHP and WP plugin development it is very very complicated to add buttons to the TinyMCE editor. It has large overhead in terms of extra files in your plugin, knowing javascript, and learning the TinyMCE API considering that it is such a common and simple goal.
THE IDEA: Have someone skilled with the TinyMCE api write a wrapper function in PHP that easily lets plugins or the functions.php file (very relevant since classes are often tied to themes!) add buttons to the TinyMCE editor. Something like:
wp_add_tinymce_button($before_text, $after_text, $button_image);
This would probably open the door to a lot more plugins using TinyMCE buttons and would make a general "add whatever buttons you want" plugin a snap to build.