Renamed "Handle" class to "Socket" to better reflect the generalization we are going to perform.
Further generalized the classes so they are not so "server specific" i.e. clients can use them as well.
Included IPv6 support and revamped Address as a result. Address is now used more frequently because of its nice abstraction properties.