Changed the meaning of effect firing's translation and rotation.

If there is no target, nothing has changed- the translation and rotation
specify the exact place to fire the effect.

If there is a target, then on the client the effect was already using the
target's translation, but the shape on the server was computed solely
from the provided parameters and that dictated which clients could see the
effect.

Well, a bunch of stuff in PX assumed that the translation/rotation were
offsets from the target, which makes total sense, so let's do that.
Also- allow the translation to be null as a shortcut for Vector2f.ZERO
that lets us avoid a bit of object creation.