I'm not sure if I did it correctly, but if I did it means you were right and I can't unload the dll.
I changed the assembly version from 1.0.0.0 to 2.0.0.0 and then tried to copy the newly compiled dll to the assemblies folder but it says the file is in use. I have no registered callbacks.
Thanks for the reply though, restarting Max isn't too bad :)