The most valuable information I can give you about optimization is to use symbols for everything that appears more than once. I generally have a generic circle graphic clip and a square, because practically everything uses these shapes sometimes. If you have an image that appears in two or more buttons or movieclips (as you do in this piece), first turn that image into a graphic symbol, and you can reuse it inside other symbols. If you have two or more objects that aren't the same, but use the same gradient, you can even turn that gradient into a symbol. When you use symbols like this, the only file size increase is the data needed to tell flash where that symbol goes, its rotation, size, etc.
Also, try to keep your point/curve count to a minimum, just like when you're working with polygons or splines in 3D.
If you have very simple animation, such as movement in a straight line or uniform scaling, this could even be accomplished with actionscript, but that's getting a little too picky....
_________________________
( o_
/ >) My 84-year-old non-techy mom uses Debian Linux. It ain't that hard.