Use proxy for jar file and toolbelt update

Changes:
- wrap the HTTP class in a function from common.rb:
  'get_http_class'
- if HTTP_PROXY is defined in the environment variables,
  instantiate Net::HTTP::Proxy instead of simply Net::HTTP
- use the result of 'get_http_class' in both the 'fetch'
  and 'stream_fetch' functions
- create a DownloadProgressIndicator class and a derived
  TimeBasedDownloadProgressIndicator in common.rb
- simplify the progress indicator handling in both
  self.update and jar_update methods by using the
  TimeBasedDownloadProgressIndicator methods
- make both humanize_time and humanize_elapsed_time
  static methods

Implements CLT-314.