issue #470 - close old socket before its is overwritten before assignmen...

...t.

The patch also changes socket copy constructor and assignment of Socket to simply clear the _fd field in the copy source to avoid the need for calling dup - move semantic fot _fd is sufficient.