diff --git a/cml/__init__.py b/cml/__init__.py
index edf35d6552734b537abf787e8fd115f27e1485ee..61e36662254cf7fbb422a9d28e08f2b5c6811e64 100644
--- a/cml/__init__.py
+++ b/cml/__init__.py
@@ -1,18 +1,24 @@
 from cml.controller import load_settings
-from cml.controller import get_data_source
+from cml.controller import load_knowledge
+from cml.controller import get_source
 from cml.controller import construction
 from cml.controller import feature_selection
 from cml.controller import reconstruction
+from cml.controller import deconstruction
 from cml.controller import search_knowledge
 
-# TODO (dmt): Load default settings automatically.
-# configure logging levels
-from logging import addLevelName, Logger, config
-from os.path import join, abspath
-from inspect import getsourcefile
+
+def _load_default_settings():
+    from os.path import join, expanduser, exists
+    path = join(expanduser('~'), ".cml", "settings.ini")
+    if exists(path): load_settings(path)
 
 
 def _setup_loggers():
+    from logging import addLevelName, Logger, config
+    from os.path import join, abspath
+    from inspect import getsourcefile
+
     protocol_level = 55
     addLevelName(protocol_level, "PROTOCOL")
 
@@ -25,4 +31,5 @@ def _setup_loggers():
     config.fileConfig(logging_config)
 
 
+_load_default_settings()
 _setup_loggers()