In answer to your points:
To find all the files associated with a package, type dpkg -L <name of
package> For instance, on my system, here is what I see for google chrome:
jjs@einstein:~$ dpkg -L google-chrome-stable
/.
/etc
/etc/cron.daily
/etc/cron.daily/google-chrome
/opt
/opt/google
/opt/google/chrome
/opt/google/chrome/xdg-settings
/opt/google/chrome/chrome.pak
/opt/google/chrome/libgcflashplayer.so
<...several hundred lines trimmed for sake of space...>
/usr/share/gnome-control-center/default-apps/google-chrome.xml
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/google-chrome.1
/usr/bin/google-chrome
jjs@einstein:~$
As to installing software where you want, you can always do that as long
as you know how. But it's not a good idea generally. The existing file
locations have been carefully thought out and conform to LFS and ubuntu
standards. Can you give an example of a piece of software that you'd
like to install in a non-standard location?
When you uninstall a package it removes all original components, but
does not remove files which you have modified. Which is a very good
thing, as I might need my specially tweaked config file for future
reference. If you want to remove all traces, you'll have to do it on
purpose, and one way to accomplish this is with the command "dpkg
--purge <package name>"