Rotate object towards mouse (as if someone is watching the mouse movements)

Okay, so i tried out using transform.Rotate with the mouse inputs, but i found the plane rotated strangely it never faced the mouse properly. How can i edit this script to get the plane to almost "watch" the mouse as it moves around the screen?

var speed : float = 200; //how fast the object should rotate

 function Update(){
      transform.Rotate(Vector3(Input.GetAxis("Mouse Y"), Input.GetAxis("Mouse Y"), 0) * speed);
 }

the problems i'm finding is that the more i move the mouse around the screen the worse it gets, I need a way for the object to return to its original rotation (smoothly) i also noticed that the Y needs inverting, but i don;t know how to invert inputs (if it is at all possible)

I think you want to "LookAt" or "RotateTowards" the World coordinate where the mouse is.

http://unity3d.com/support/documentation/ScriptReference/Camera.ScreenToWorldPoint.html http://unity3d.com/support/documentation/ScriptReference/Transform.LookAt.html http://unity3d.com/support/documentation/ScriptReference/Vector3.RotateTowards.html