Add proxy support

Proxy support
Basic authentication support
Unit test