Replaced DefaultEncryptor with BaseEncryptor + specs
Added optional encryption and preferential_settings
Added preferential_settings and accessor methods