Is it possible to have tables in the dataset that are not bound to any data source?
Yes
Why do you deploy an assembly into GAC?
To allow other application to access the shared assembly.
How do you uninstall assembly from GAC?
Use Gacutil.exe with U switch.