Spring MVC is one component within the whole Spring Framework, to support developpment of web applications. You can use any web containers, so it works fine with Tomcat. Just think that Spring is a third party library. You just need to put the necessary jar files in the lib directory, and define a few xml files. There's a nice introduction here : http://www.zabada.com/technology/Wiki.jsp?page=SpringMVCBasics
Spring as a whole have many modules for IOC, AOP, Web MVC etc. It is very loosely coupled in such a way you can pick any of them and use in your application. You can check the complete modules at www.springframework.org
Spring MVC is industry's famous Model-View-Controller implementation for developing web based application.
Since Spring is a light weight framework, you dont require any app server. A simple web server (that has servelt engine) is enough. Yes, you can use tomcat to deploy.