Based on reject pull request of dowski ( https://github.com/jamwt/diesel/pull/65/files )

Determination of IP/name is now done inside resolver.py as requested by jamwt

source_ip specification is now possible for Client as well as UDPClient. Having it inside UDPClient was a necessity as _setup_socket in UDPClient is called using code from Client's __init__
Merge pull request #67 from dliappis/client-improvements2

source_ip for Client and UDPClient and source IP resolution -- Client improvements based on dowski's PR