types: addition of EncryptedType

* Adds a type that has the name `EncryptedType`. This type gives
  the possibility to encrypt a value, so that in the database exists
  the encrypted form of the value and not the original one. When
  a value needs to be read(and is of type `EncryptedType`) the value
  automatically decrypted in order to present to the user.

* The encryption and decryption are using the AES algorithm which is
  implemented in a library that is called Cryptography.

* Inside the tests folder there is a test whose name is
  `test_encrypted` and tests the functionality of the above type.

* Inside the `encrypted.py` file there is documentation with a
  complete example. Also the `data_types.rst` is modified in order
  to add a section for the `EncryptedType`.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>