Add support for multiple encryption methods

We use only one encrypt() method but it returns the method to decrypt
the data. This way we can change the encryption mechanism but
always have a way to know how to decrypt whatever is stored.

Change-Id: I2315a33105a8766f69d02f0617af39a9dae19ddf
Partial-bug: #1251647
Merge "Add support for multiple encryption methods"