Findbugs - MALICIOUS_CODE category fixed

## What
Added the category of MALICIOUS_CODE to the FindBugs configuration and as a result, fixed errors reported back. Findings are mostly in the category of "Component exposes internal implementation to the caller", which usually deals with returning mutable objects (primitive/object arrays, dates, etc) to callers. 

## How
In order to address the findings, I did the following:

1. Wrapped immutable collections around `Object[]`, `int[]`, etc 
2. Used `ByteSource` where appropriate for `byte[]`
3. Making sure `DateTime` is used instead of `Date`
4. Marked the `SimpleHttpClient` class to be only internally accessible
5. Guava library added as an explicit dependency to account for the above
6. Updated javadocs and unit tests to reflect changes

Shouldn't we have also a check on ```certificates``` being not ```null```here?