added more exceptions to catch errors
added in socket timeout. also removed some exceptions so the program can easily be exited