1) Yes.
You can use the plrmoveto=x action when a plralive=0 condition is met. (x being the name of the entity to move the player to)
I usually go to a separate state on the plralive=0 then check for plralive=1 to do the move.
That way you do not interupt the built in death spawn, which might spawn you at the start position after your move.
Also, you want to make sure that the script running this is assigned to an entity that has Always Active = Yes
That way, the player's distance fom the entity will not negatively effect the script's condition.
2) Yes.
Use the same method and move the player to the winzone.
Try somethng like this
desc = winner winner chicken dinner
:state=0:state=1
:state=1,plralive=0:state=2
:state=2,plralive=1:plrmoveto=wwcd,state=1
and see what happens.
That should move to the player to whatever you name wwcd (could be a winzone or any entity) after they die.
That example loops, but if you want it to only happen once then change the last line to goto state=3 instead of state=1
Then it will only work once.