Added http protocol driver to handle downloading chunks

Added:
- Added protocol driver to handle downloading chunks
- Added Timer class to measure performance

Changed:
- Added tags to all test cases
- Renamed Chunk parameter start to offset

Fixed:

Removed:
Merge branch 'protocol-provider' into development
Add the download manager and cleaner

Added:
- Download manager that handles the whole download process
- Cleaner that renames and moves temporary merge file and deletes
directory with chunks

Changed:
- Added additional logging for debugging
- Added checksum parameter to Download
- Added method to retrieve temporary merge file with

Fixed:
- When chunk does not exist the work directory and parent directories
are created before creating the chunk

Removed:
Merge branch 'download-manager' into development
Merge branch 'development'