Removing unnecessary fields from ProviderItem.

I'm targeting to refactor the whole ProviderItem class because I've not
used the Provider class so far and I should not duplicate information
from "Provider" into "ProviderItem".
Preseeded providers only have provider.json url

I've refactored everything to be able to remove all but provider.json
url at urls files.
Simplified the methods to add a new provider.

Adding a new provider is the same that selecting a new one, using the same methods and following the same workflow.
Successfully rebased onto progress-bars.
Provider setup: One method downloads everything.

This method uses another 3 to download each file.

Next step: broadcast progress and remove unnecessary methods.
A bit of cleaning.
ProviderAPI broadcasts progress to CW.

Setting up a provider makes the progressbar move according to the number of files downloaded (1/3, 2/3, 3/3).

Next step: recover from download errors individually. That means that if a download fails but the others went OK, the user will be prompted to retry that individual failing download.
CA cert saved correctly in SharedPreferences.

I/O error at login phase fixed.
Successfully rebased onto 0.2.2
Rebased onto 0.2.3
Setting up a provider w/o connection doesn't fail.

There was a nullpointer already fixed in another branch which
completely complements this one. The message shown to the user is empty,
but that belongs to bug/more-detailed-response-to-CW-errors.
Fixed algorithm to hide all but one provider.
Merge branch 'bug/strong-cert-pinning-to-using-downloaded-CA-cert' into develop
Merge branch 'bug/configuring-progressbar-overlaps-provider-items' into develop