Thus, it isn't hard to keep project code separated. Images are extremely convenient and fairly fragile. Every so often you will kill an image, and you will lose everything in it. It is possible to recover from your changes log, but it is real pain if you have several weeks of work there to recover. I make it a point to build a new image once a week or so.
Some people do it every day.
It all depends on your style, I guess. Just because you saved an image doesn't mean that you can start it up again. Change sets ARE fileOuts. The main problem with filing out a category is that all your code might not be there. The problem with filing out all changes is that you get one big file, and maybe you want five files, one for each category.