What parts can you upgrade on a MacBook Pro? If I buy a MacBook Pro, what parts can I upgrade later?

Is it possible to upgrade to more memory? Is it possible to upgrade to another harddrive? e.g. to a newer SSD-drive? Anything else that is possible to upgrade?
In addition to Am1rr3za's answers (other than the CPU, which is soldered to the logic board), you can also convert the optical drive bay to a caddy which houses a second hard drive or solid state drive.  This is a huge upgrade if you can stand being without an internal disc drive...