RequestHandler: more generic exception catching to catch java.lang.AssertionError on executing the http request

AssertionError is thrown on some devices where for example MD5 is not available:
java.security.NoSuchAlgorithmException: MessageDigest MD5 implementation not found
Add some TODOs to enable disabling of offline tracking
Add parameter AdjustIoDropOfflineActivities to set ActivityHandler.dropOfflineActivities
Inject dropOfflineActivities into PackageHandler
Send next package instead of closing a failed one when dropping is enabled
Don't read old packages when offline tracking is disabled
Don't write packages when offline tracking is disabled
Extract PackageHandler.getFailureMessage to enable different messages
Refactor request error logging by extracting RequestHandler.getReasonString()
Update version to 2.1.6
Merge pull request #33 from adeven/disable_offline_tracking

Add option to disable offline tracking
created test project
Merge pull request #28 from skoobe/md5_crashfix

crashfix: RequestHandler: more generic exception catching to catch java.lang.AssertionError on executing the http request
Logger refac static to reference. Logger interface extraction
New test project
Extraction of interfaces and creation of a Factory to swap implementations for testing
Revert renaming to solve merge conflit
Merge fix with origin
Small test fix
Renaming and PackageHandler tests