Introduce key providers
In order to support additional key file providers change the architecture so that each possible encryption method is an own key provider.
Also Fixes: #173 (closed)
In order to support additional key file providers change the architecture so that each possible encryption method is an own key provider.
Also Fixes: #173 (closed)