1) First of all: either approach is correct, both would work. Personally, I think I would call a "move"-function on every object manually, though. That way, I keep control of the time-flow in the main game class. When I have to pause the objects (e.g. because some message box pops up), I just don't call the "move"-functions for a while.
To simplify this, you could have those objects implement the "SPAnimatable" protocol, which is very simple to do, and add them to a custom juggler. Now, you can call "advanceTime:" on that juggler if you want the enemies to move (or not, if they should not).
But, as I said, that's just one way to do it =)
2) A physics engine is definitely on our "wanna have!!!"-list 😉 But currently, it's not our top priority, as there are some more "basic" things we need to complete first.
3) That can be problematic, you are right. I suppose I will add a "removeTweensForObject:"-method to the juggler, which can be called in those cases.
4) Wow, that sounds like a bug! I will have a look at it! It should behave the way you described it.
5) Hm, that's weird! The only thing I can think of: are the x- and y-coordinates of the SPImage object whole numbers (relative to the stage)? Because if the image "sits" between the pixels (so to say), it will look a little blurred. (That would not explain why it looks sharp in the simulator, though).
I hope I could help you a little =)