diff --git a/bob/bio/face/config/database/__init__.py b/bob/bio/face/config/database/__init__.py
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/bob/bio/face/config/database/arface.py b/bob/bio/face/config/database/arface.py
deleted file mode 100644
index c378304070cd810f86e9fd0fbc84f469589281a7..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/arface.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import ARFaceBioDatabase
-
-arface_directory = "[YOUR_ARFACE_DIRECTORY]"
-
-database = ARFaceBioDatabase(
-    original_directory=arface_directory,
-    original_extension=".png",
-    protocol='all'
-)
diff --git a/bob/bio/face/config/database/banca_english.py b/bob/bio/face/config/database/banca_english.py
deleted file mode 100644
index 76c765db0369ded5679a4a3f15db8fb7d29dadb0..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/banca_english.py
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import BancaBioDatabase
-
-banca_directory = "[YOUR_BANCA_DIRECTORY]"
-
-database = BancaBioDatabase(
-    original_directory=banca_directory,
-    original_extension=".ppm",
-    protocol='P'
-)
-
diff --git a/bob/bio/face/config/database/caspeal.py b/bob/bio/face/config/database/caspeal.py
deleted file mode 100644
index d92dbf50df517251ff366e7f28c545d7951d9644..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/caspeal.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import CaspealBioDatabase
-
-caspeal_directory = "[YOUR_CAS-PEAL_DIRECTORY]"
-
-database = CaspealBioDatabase(
-    original_directory=caspeal_directory,
-    protocol='lighting'
-)
-
diff --git a/bob/bio/face/config/database/frgc.py b/bob/bio/face/config/database/frgc.py
deleted file mode 100644
index 304fcb3985f1012fe6839f4abe076c10968c5693..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/frgc.py
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env python
-
-import bob.db.frgc
-import bob.bio.base
-
-frgc_directory = "[YOUR_FRGC_DIRECTORY]"
-
-database = bob.bio.base.database.DatabaseBob(
-    database = bob.db.frgc.Database(frgc_directory),
-    name = "frgc",
-    protocol = '2.0.1',
-    models_depend_on_protocol = True
-)
diff --git a/bob/bio/face/config/database/gbu.py b/bob/bio/face/config/database/gbu.py
deleted file mode 100644
index 6da69eb940628af703271d0fb08f6028f9e682bf..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/gbu.py
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import GBUBioDatabase
-
-mbgc_v1_directory = "[YOUR_MBGC-V1_DIRECTORY]"
-
-database = GBUBioDatabase(
-    original_directory=mbgc_v1_directory,
-    protocol='Good',
-    models_depend_on_protocol=True,
-
-    all_files_options={'subworld': 'x2'},
-    extractor_training_options={'subworld': 'x2'},
-    projector_training_options={'subworld': 'x2'},
-    enroller_training_options={'subworld': 'x2'}
-)
-
diff --git a/bob/bio/face/config/database/lfw_restricted.py b/bob/bio/face/config/database/lfw_restricted.py
deleted file mode 100644
index 1844f9f697c36e97ec00dc4407e50073f1701186..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/lfw_restricted.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import LFWBioDatabase
-
-lfw_directory = "[YOUR_LFW_FUNNELED_DIRECTORY]"
-
-database = LFWBioDatabase(
-    original_directory=lfw_directory,
-    annotation_type='funneled',
-
-    protocol='view1',
-    training_depends_on_protocol=True,
-    models_depend_on_protocol=True,
-
-    all_files_options={'world_type': 'restricted'},
-    extractor_training_options={'world_type': 'restricted'},  # 'subworld' : 'twofolds'
-    projector_training_options={'world_type': 'restricted'},  # 'subworld' : 'twofolds'
-    enroller_training_options={'world_type': 'restricted'}  # 'subworld' : 'twofolds'
-)
diff --git a/bob/bio/face/config/database/lfw_unrestricted.py b/bob/bio/face/config/database/lfw_unrestricted.py
deleted file mode 100644
index b05a354ac71ba06fb6c4babcb23fef1f7e16c1bc..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/lfw_unrestricted.py
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import LFWBioDatabase
-
-lfw_directory = "[YOUR_LFW_FUNNELED_DIRECTORY]"
-
-database = LFWBioDatabase(
-    original_directory=lfw_directory,
-    annotation_type='funneled',
-
-    protocol='view1',
-    training_depends_on_protocol=True,
-    models_depend_on_protocol=True,
-
-    all_files_options = { 'world_type' : 'unrestricted' },
-    extractor_training_options = { 'world_type' : 'unrestricted' }, # 'subworld' : 'twofolds'
-    projector_training_options = { 'world_type' : 'unrestricted' }, # 'subworld' : 'twofolds'
-    enroller_training_options =  { 'world_type' : 'unrestricted' } # 'subworld' : 'twofolds'
-)
-
diff --git a/bob/bio/face/config/database/mobio_female.py b/bob/bio/face/config/database/mobio_female.py
deleted file mode 100644
index 73508e5c0a691a50fa24f2ac24c473a65adced72..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/mobio_female.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol = 'female',
-    models_depend_on_protocol=True,
-
-    all_files_options={'gender': 'female'},
-    extractor_training_options={'gender': 'female'},
-    projector_training_options={'gender': 'female'},
-    enroller_training_options={'gender': 'female'},
-    z_probe_options={'gender': 'female'}
-)
diff --git a/bob/bio/face/config/database/mobio_image.py b/bob/bio/face/config/database/mobio_image.py
deleted file mode 100644
index 59c3565155e184791f82acbd3a72c36d54bd16ea..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/mobio_image.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol='male',
-    models_depend_on_protocol = True,
-)
-
-
-
-
diff --git a/bob/bio/face/config/database/mobio_male.py b/bob/bio/face/config/database/mobio_male.py
deleted file mode 100644
index 214fea4560d6534be3b755355aa73f7c7461858f..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/mobio_male.py
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol='male',
-    models_depend_on_protocol = True,
-
-    all_files_options={'gender': 'male'},
-    extractor_training_options={'gender': 'male'},
-    projector_training_options={'gender': 'male'},
-    enroller_training_options={'gender': 'male'},
-    z_probe_options={'gender': 'male'}
-)
-
diff --git a/bob/bio/face/config/database/multipie.py b/bob/bio/face/config/database/multipie.py
deleted file mode 100644
index 9324389bc4fa645068d1f08d2f04d947ee077cf4..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/multipie.py
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MultipieBioDatabase
-
-multipie_image_directory = "[YOUR_MULTI-PIE_IMAGE_DIRECTORY]"
-multipie_annotation_directory = "[YOUR_MULTI-PIE_ANNOTATION_DIRECTORY]"
-
-database = MultipieBioDatabase(
-    original_directory=multipie_image_directory,
-    annotation_directory=multipie_annotation_directory,
-    protocol='U',
-    training_depends_on_protocol = True
-)
diff --git a/bob/bio/face/config/database/multipie_pose.py b/bob/bio/face/config/database/multipie_pose.py
deleted file mode 100644
index a67930ffd3913a094ca3c1c9e013178cf6c1741b..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/multipie_pose.py
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env python
-
-
-from bob.bio.db import MultipieBioDatabase
-
-# here, we only want to have the cameras that are used in the P protocol
-cameras = ('24_0', '01_0', '20_0', '19_0', '04_1', '05_0', '05_1', '14_0', '13_0', '08_0', '09_0', '12_0', '11_0')
-
-multipie_image_directory = "[YOUR_MULTI-PIE_IMAGE_DIRECTORY]"
-multipie_annotation_directory = "[YOUR_MULTI-PIE_ANNOTATION_DIRECTORY]"
-
-database = MultipieBioDatabase(
-    original_directory=multipie_image_directory,
-    annotation_directory=multipie_annotation_directory,
-    protocol = 'P',
-    training_depends_on_protocol = True,
-
-    all_files_options={'cameras': cameras},
-    extractor_training_options={'cameras': cameras},
-    projector_training_options={'cameras': cameras, 'world_sampling': 3, 'world_first': True},
-    enroller_training_options={'cameras': cameras}
-
-)
-
diff --git a/bob/bio/face/config/database/scface.py b/bob/bio/face/config/database/scface.py
deleted file mode 100644
index 9f4e339d8794e3d1d172f2577b190a61e00d796a..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/scface.py
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import SCFaceBioDatabase
-
-scface_directory = "[YOUR_SC_FACE_DIRECTORY]"
-
-database = SCFaceBioDatabase(
-    original_directory=scface_directory,
-    protocol='combined'
-)
diff --git a/bob/bio/face/config/database/xm2vts.py b/bob/bio/face/config/database/xm2vts.py
deleted file mode 100644
index 54a3533d64d6f9fc81a042e2d82d341c1b831a6f..0000000000000000000000000000000000000000
--- a/bob/bio/face/config/database/xm2vts.py
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import XM2VTSBioDatabase
-
-xm2vts_directory = "[YOUR_XM2VTS_DIRECTORY]"
-
-database = XM2VTSBioDatabase(
-    original_directory=xm2vts_directory,
-    protocol='lp1'
-)
diff --git a/bob/bio/face/test/test_databases.py b/bob/bio/face/test/test_databases.py
index faa2fc4419b6564e3c4b09fd32dec0d61576babb..53d159c43375e6b4df0ed4bdd1d62bc528695940 100644
--- a/bob/bio/face/test/test_databases.py
+++ b/bob/bio/face/test/test_databases.py
@@ -40,7 +40,7 @@ def _check_database(database, groups=('dev',), protocol=None, training_depends=F
     assert len(database.arrange_by_client(database.training_files('train_enroller'))) > 0
 
     for group in groups:
-        model_ids = database.model_ids(group, protocol=protocol)
+        model_ids = database.model_ids_with_protocol(group, protocol=protocol)
         assert len(model_ids) > 0
         assert database.client_id_from_model_id(model_ids[0]) is not None
         assert len(database.enroll_files(model_ids[0], group)) > 0
@@ -160,7 +160,7 @@ def test_mobio():
 
     try:
         _check_annotations(database)
-    except IOError as e:
+    except Exception as e:
         raise SkipTest(
             "The annotations could not be queried; probably the annotation files are missing. Here is the error: '%s'" % e)
 
@@ -181,7 +181,7 @@ def test_multipie():
 
     try:
         _check_annotations(database)
-    except IOError as e:
+    except Exception as e:
         raise SkipTest(
             "The annotations could not be queried; probably the annotation files are missing. Here is the error: '%s'" % e)
 
diff --git a/setup.py b/setup.py
index 0e4f70a23ff17f3a7c63ef5140cda18fe49d6e32..03bd32d2c4e9485b1f00ad13d07112f42e6b03b5 100644
--- a/setup.py
+++ b/setup.py
@@ -108,20 +108,19 @@ setup(
         ],
 
         'bob.bio.database': [
-            'arface            = bob.bio.face.config.database.arface:database',
-            'banca             = bob.bio.face.config.database.banca_english:database',
-            'caspeal           = bob.bio.face.config.database.caspeal:database',
-            'frgc              = bob.bio.face.config.database.frgc:database',
-            'gbu               = bob.bio.face.config.database.gbu:database',
-            'lfw-restricted    = bob.bio.face.config.database.lfw_restricted:database',
-            'lfw-unrestricted  = bob.bio.face.config.database.lfw_unrestricted:database',
-            'mobio-image       = bob.bio.face.config.database.mobio_image:database',
-            'mobio-male        = bob.bio.face.config.database.mobio_male:database',  # MOBIO gender-dependent training
-            'mobio-female      = bob.bio.face.config.database.mobio_female:database',  # MOBIO gender-dependent training
-            'multipie          = bob.bio.face.config.database.multipie:database',
-            'multipie-pose     = bob.bio.face.config.database.multipie_pose:database',
-            'scface            = bob.bio.face.config.database.scface:database',
-            'xm2vts            = bob.bio.face.config.database.xm2vts:database',
+            'arface            = bob.bio.db.default_configs.arface:database',
+            'banca             = bob.bio.db.default_configs.banca_english:database',
+            'caspeal           = bob.bio.db.default_configs.caspeal:database',
+            'frgc              = bob.bio.db.default_configs.frgc:database',
+            'gbu               = bob.bio.db.default_configs.gbu:database',
+            'lfw-restricted    = bob.bio.db.default_configs.lfw_restricted:database',
+            'lfw-unrestricted  = bob.bio.db.default_configs.lfw_unrestricted:database',
+            'mobio-male        = bob.bio.db.default_configs.mobio_male:database',  # MOBIO gender-dependent training
+            'mobio-female      = bob.bio.db.default_configs.mobio_female:database',  # MOBIO gender-dependent training
+            'multipie          = bob.bio.db.default_configs.multipie:database',
+            'multipie-pose     = bob.bio.db.default_configs.multipie_pose:database',
+            'scface            = bob.bio.db.default_configs.scface:database',
+            'xm2vts            = bob.bio.db.default_configs.xm2vts:database',
         ],
 
         'bob.bio.preprocessor': [