Where do you stop. You've got a great idea for an extension but at what point do you say enough is enough and release. There has to be a point in the development of an extension where adding additional features actualy detracts from the effectiveness of the extension rather than adding to it.
If/When you start development on your extension don't reinvent the wheel!
Joomla has established several default behaviours and irrespective of whether you agree with them your users are already familiar with them. By following these defaults you will greatly reduce the learning curve for your extensions and consequently reduce the number of support requests.