implement host filter
add LocalSocketSelector for picking NetworkInterface
create ServerAddress and ProxyAddress to have type safety instead of 
using String everywhere.
implement authentication when forwarding to the chained proxy