Index: src/Actions/CommandAction/BondLengthTableAction.cpp
===================================================================
--- src/Actions/CommandAction/BondLengthTableAction.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/Actions/CommandAction/BondLengthTableAction.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -47,5 +47,7 @@
   if (configuration->BG == NULL) {
     configuration->BG = new BondGraph(configuration->GetIsAngstroem());
-    if ((!params.BondGraphFileName.empty()) && (configuration->BG->LoadBondLengthTable(params.BondGraphFileName.string()))) {
+    if ((!params.BondGraphFileName.empty())
+        && boost::filesystem::exists(params.BondGraphFileName)
+        && (configuration->BG->LoadBondLengthTable(params.BondGraphFileName.string()))) {
       DoLog(0) && (Log() << Verbose(0) << "Bond length table loaded successfully." << endl);
       return Action::success;
Index: src/Helpers/MemDebug.cpp
===================================================================
--- src/Helpers/MemDebug.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/Helpers/MemDebug.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -509,5 +509,5 @@
 void operator delete(void *ptr) throw() {
   if(!ptr){
-    cerr << "Warning: Deleting NULL pointer" << endl;
+    //cerr << "Warning: Deleting NULL pointer" << endl;
     return;
   }
Index: src/ThermoStatContainer.cpp
===================================================================
--- src/ThermoStatContainer.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/ThermoStatContainer.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -54,7 +54,12 @@
   ThermostatTraits<Thermostat> *WoodcockTrait = new ThermostatTraits<Woodcock>();
   availThermostats[WoodcockTrait->getName()] = WoodcockTrait;
-  for(traitsMap::iterator iter = availThermostats.begin();iter!=availThermostats.end();++iter){
-    cout << iter->first << endl;
-  }
+
+  // for debugging: list all thermostats
+//  cout << "List of known thermostats: ";
+//  for(traitsMap::iterator iter = availThermostats.begin();iter!=availThermostats.end();++iter){
+//    cout << iter->first << " ";
+//  }
+//  cout << endl;
+
   ASSERT(availThermostats.size()==6,"Not all implemented thermostats referenced!\nDid you check the names in the traits?");
   activeThermostat=new Berendsen();
Index: src/UIElements/CommandLineUI/CommandLineParser.cpp
===================================================================
--- src/UIElements/CommandLineUI/CommandLineParser.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/CommandLineUI/CommandLineParser.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -97,17 +97,17 @@
       const OptionTrait* const currentOption = OptionRegistry::getInstance().getOptionByName(optioniter->first);
       // add the option
-      std::cout << "Registering Option "
-          << currentOption->getName()
-          << " with type '" << currentOption->getTypeName() << "' "
-          << " with description '" << currentOption->getDescription() << "' ";
-      if (currentOption->hasShortForm())
-        std::cout << ", with short form " << currentOption->getShortForm();
-      else
-        std::cout << ", with no short form ";
-      if (currentOption->hasDefaultValue())
-        std::cout << ", with default value " << currentOption->getDefaultValue();
-      else
-        std::cout << ", with no default value ";
-      std::cout << std::endl;
+//      std::cout << "Registering Option "
+//          << currentOption->getName()
+//          << " with type '" << currentOption->getTypeName() << "' "
+//          << " with description '" << currentOption->getDescription() << "' ";
+//      if (currentOption->hasShortForm())
+//        std::cout << ", with short form " << currentOption->getShortForm();
+//      else
+//        std::cout << ", with no short form ";
+//      if (currentOption->hasDefaultValue())
+//        std::cout << ", with default value " << currentOption->getDefaultValue();
+//      else
+//        std::cout << ", with no default value ";
+//      std::cout << std::endl;
 
       AddOptionToParser(currentOption, (CmdParserLookup["options"]));
@@ -116,18 +116,18 @@
     if (!ActionAlreadyAdded_flag) {
       // add the action
-      std::cout << "Registering Action "
-          << currentAction->Traits.getName()
-          << " in menu " << currentAction->Traits.getMenuName()
-          << " with type '" << currentAction->Traits.getTypeName() << "' "
-          << " with description '" << currentAction->Traits.getDescription() << "' ";
-      if (currentAction->Traits.hasShortForm())
-        std::cout << ", with short form " << currentAction->Traits.getShortForm();
-      else
-        std::cout << ", with no short form ";
-      if (currentAction->Traits.hasDefaultValue())
-        std::cout << ", with default value " << currentAction->Traits.getDefaultValue();
-      else
-        std::cout << ", with no default value ";
-      std::cout  << std::endl;
+//      std::cout << "Registering Action "
+//          << currentAction->Traits.getName()
+//          << " in menu " << currentAction->Traits.getMenuName()
+//          << " with type '" << currentAction->Traits.getTypeName() << "' "
+//          << " with description '" << currentAction->Traits.getDescription() << "' ";
+//      if (currentAction->Traits.hasShortForm())
+//        std::cout << ", with short form " << currentAction->Traits.getShortForm();
+//      else
+//        std::cout << ", with no short form ";
+//      if (currentAction->Traits.hasDefaultValue())
+//        std::cout << ", with default value " << currentAction->Traits.getDefaultValue();
+//      else
+//        std::cout << ", with no default value ";
+//      std::cout  << std::endl;
 
       ASSERT(CmdParserLookup.find(currentAction->Traits.getMenuName()) != CmdParserLookup.end(),
@@ -156,5 +156,5 @@
   ASSERT(currentOption != NULL, "CommandLineParser::AddOptionToParser() - currentOption is NULL!");
   // add other options
-  std::cout << "Adding Action " << currentOption->getName() << " with type " << currentOption->getType()->name() << " and KeyandShortform " << currentOption->getKeyAndShortForm() << " to CommandLineParser." << std::endl;
+  //std::cout << "Adding Action " << currentOption->getName() << " with type " << currentOption->getType()->name() << " and KeyandShortform " << currentOption->getKeyAndShortForm() << " to CommandLineParser." << std::endl;
   switch(TypeToEnums.getEnumforType(currentOption->getType())) {
     default:
@@ -369,12 +369,13 @@
 {
   std::map <std::string, std::string> ShortFormToActionMap = getShortFormToActionMap();
+  DoLog(0) && (Log() << Verbose(0) << "Scanning command line arguments and recognizing Actions." << std::endl);
   // go through all arguments
   for (int i=1;i<argc;i++) {
-    (std::cout << Verbose(1) << "Checking on " << argv[i] << std::endl);
+    DoLog(2) && (Log() << Verbose(2) << "Checking on " << argv[i] << std::endl);
     // check whether they
     if (argv[i][0] == '-') { // .. begin with -
-      (cout << Verbose(1) << "Possible argument: " << argv[i] << endl);
+      DoLog(2) && (Log() << Verbose(2) << "Possible argument: " << argv[i] << endl);
       if (argv[i][1] == '-') { // .. or --
-        (cout << Verbose(1) << "Putting " << argv[i] << " into the sequence." << endl);
+        DoLog(1) && (Log() << Verbose(1) << "Putting " << argv[i] << " into the sequence." << endl);
         SequenceOfActions.push_back(&(argv[i][2]));
         //  .. and check that next letter is not numeric, if so insert
@@ -382,5 +383,5 @@
         std::map <std::string, std::string>::iterator iter = ShortFormToActionMap.find(&(argv[i][1]));
         if (iter != ShortFormToActionMap.end()) {
-          (cout << Verbose(1) << "Putting " << iter->second << " for " << iter->first << " into the sequence." << endl);
+          DoLog(1) && (Log() << Verbose(1) << "Putting " << iter->second << " for " << iter->first << " into the sequence." << endl);
           SequenceOfActions.push_back(iter->second);
         }
Index: src/UIElements/CommandLineUI/CommandLineWindow.cpp
===================================================================
--- src/UIElements/CommandLineUI/CommandLineWindow.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/CommandLineUI/CommandLineWindow.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -25,4 +25,7 @@
 #include "CommandLineUI/CommandLineStatusIndicator.hpp"
 
+#include "Helpers/Log.hpp"
+#include "Helpers/Verbose.hpp"
+
 #include "Actions/Action.hpp"
 #include "Actions/ActionRegistry.hpp"
@@ -50,11 +53,15 @@
 
   // go through all possible actions
+  DoLog(0) && (Log() << Verbose(0) << "Calling Actions ... " << std::endl);
   for (std::list<std::string>::iterator CommandRunner = CommandLineParser::getInstance().SequenceOfActions.begin(); CommandRunner != CommandLineParser::getInstance().SequenceOfActions.end(); ++CommandRunner) {
-    cout << "Checking presence of " << *CommandRunner << ": ";
     if (ActionRegistry::getInstance().isActionPresentByName(*CommandRunner)) {
-      cout << "calling " << *CommandRunner << endl;
+      DoLog(1) && (Log() << Verbose(1)
+          << "Checking presence of " << *CommandRunner << ": "
+          << "calling " << *CommandRunner << endl);
       ActionRegistry::getInstance().getActionByName(*CommandRunner)->call();
     } else {
-      cout << "absent." << endl;
+      DoLog(1) && (Log() << Verbose(1)
+          << "Checking presence of " << *CommandRunner << ": "
+          << "absent." << endl);
     }
   }
Index: src/UIElements/CommandLineUI/TypeEnumContainer.cpp
===================================================================
--- src/UIElements/CommandLineUI/TypeEnumContainer.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/CommandLineUI/TypeEnumContainer.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -64,5 +64,6 @@
   TypeEnumMap[&typeid(std::vector<const element *>)] = ListOfElementsType;
 
-  ListAllKnownTypes();
+  // for debugging: list all stored types
+  //ListAllKnownTypes();
 };
 
@@ -83,7 +84,4 @@
     std::cout << " Known type is " << (iter->first)->name() << " or enum " << iter->second << std::endl;
   }
-  std::cout << "BoxVector type is " << typeid(BoxVector).name() << std::endl;
-  std::cout << "Vector type is " << typeid(Vector).name() << std::endl;
-  std::cout << "VectorValue type is " << typeid(VectorValue).name() << std::endl;
 }
 
@@ -94,5 +92,5 @@
 enum TypeEnumContainer::EnumOfTypes TypeEnumContainer::getEnumforType(const std::type_info *_type)
 {
-  std::cout << "Looking for type " << _type->name() << std::endl;
+  //std::cout << "Looking for type " << _type->name() << std::endl;
   ASSERT(TypeEnumMap.find(_type) != TypeEnumMap.end(),
       "CommandLineParser::getEnumforType() - cannot find the type as enum!.");
Index: src/UIElements/Menu/Menu.cpp
===================================================================
--- src/UIElements/Menu/Menu.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/Menu/Menu.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -76,8 +76,8 @@
         const std::string &TopName = iter->second.first;
         const int &MenuPosition = iter->second.second;
-        std::cout << "MenuName is " << MenuName
-            << ", TopName is " << TopName
-            << " and Position is " << MenuPosition
-            << std::endl;
+//        std::cout << "MenuName is " << MenuName
+//            << ", TopName is " << TopName
+//            << " and Position is " << MenuPosition
+//            << std::endl;
 
         // does it belong to us?
@@ -125,5 +125,5 @@
 void Menu::addSeparator()
 {
-  std::cout << "Creating separator at position " << TopPosition << std::endl;
+//  std::cout << "Creating separator at position " << TopPosition << std::endl;
   ASSERT( LastItem != SeparatorItem,
       "Menu::populate() - adding another separator after a separator!");
@@ -135,6 +135,6 @@
 void Menu::addSubmenu(const std::string &MenuName, const int MenuPosition)
 {
-  std::cout << "Creating top-level menu " << MenuName
-      << " at position " << TopPosition << std::endl;
+//  std::cout << "Creating top-level menu " << MenuName
+//      << " at position " << TopPosition << std::endl;
   ASSERT (!isPresent(MenuName),
       "Menu::addSubmenu() - trying to add menu "+MenuName+" with already present token!");
Index: src/UIElements/Menu/MenuDescription.cpp
===================================================================
--- src/UIElements/Menu/MenuDescription.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/Menu/MenuDescription.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -89,5 +89,5 @@
 MenuDescription::~MenuDescription()
 {
-  std::cout << "MenuDescription: clearing maps ... " << std::endl;
+  //std::cout << "MenuDescription: clearing maps ... " << std::endl;
   for (IterableMap::iterator iter = MenuPositionMap->begin(); !MenuPositionMap->empty(); iter = MenuPositionMap->begin())
     MenuPositionMap->erase(iter);
Index: src/UIElements/Menu/Qt4/QtMenu.hpp
===================================================================
--- src/UIElements/Menu/Qt4/QtMenu.hpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/UIElements/Menu/Qt4/QtMenu.hpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -72,5 +72,5 @@
         CharRunner != ActionName.end();
         ++CharRunner) {
-      std::cout << "Current char is " << *CharRunner << std::endl;
+//      std::cout << "Current char is " << *CharRunner << std::endl;
       if (!Inserted) {
         Inserter = ShortcutMap.insert(
@@ -78,5 +78,5 @@
             );
         if (Inserter.second) {
-          std::cout << "Accelerator is " << *CharRunner << std::endl;
+//          std::cout << "Accelerator is " << *CharRunner << std::endl;
           newname += '&';
           Inserted = true;
Index: src/builder_init.cpp
===================================================================
--- src/builder_init.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/builder_init.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -67,4 +67,5 @@
   cout << "`MoleCuilder - to create and alter molecular systems." << endl;
   cout << "Copyright (C) 2010  University Bonn. All rights reserved." << endl;
+  cout << endl;
 }
 
@@ -80,5 +81,5 @@
   ProgramHeader();
 
-  setVerbosity(0);
+  setVerbosity(1);
   // need to init the history before any action is created
   ActionHistory::init();
@@ -101,15 +102,17 @@
   if (World::getInstance().getConfig()->BG == NULL) {
     World::getInstance().getConfig()->BG = new BondGraph(World::getInstance().getConfig()->GetIsAngstroem());
-    if (World::getInstance().getConfig()->BG->LoadBondLengthTable(BondGraphFileName)) {
-      DoLog(0) && (Log() << Verbose(0) << "Bond length table loaded successfully." << endl);
-    } else {
-      DoeLog(1) && (eLog()<< Verbose(1) << "Bond length table loading failed." << endl);
+    if (boost::filesystem::exists(BondGraphFileName)) {
+      if (World::getInstance().getConfig()->BG->LoadBondLengthTable(BondGraphFileName)) {
+        DoLog(0) && (Log() << Verbose(0) << "Bond length table loaded successfully." << endl);
+      } else {
+        DoeLog(1) && (eLog()<< Verbose(1) << "Bond length table loading failed." << endl);
+      }
     }
   }
   // handle remaining arguments by CommandLineParser
   if (argc>1) {
+    DoLog(0) && (Log() << Verbose(0) << "Setting UI to CommandLine." << endl);
     CommandLineParser::getInstance().InitializeCommandArguments();
     CommandLineParser::getInstance().Run(argc,argv);
-    DoLog(0) && (Log() << Verbose(0) << "Setting UI to CommandLine." << endl);
     UIFactory::registerFactory(new CommandLineUIFactory::description());
     UIFactory::makeUserInterface("CommandLine");
Index: src/periodentafel.cpp
===================================================================
--- src/periodentafel.cpp	(revision f4d06356f58f97d60e79eab5f19874cf6cd3d55c)
+++ src/periodentafel.cpp	(revision ad727091ea334c1a264e49463c1dfd9494856a64)
@@ -307,5 +307,5 @@
     //cout << "First header: " << header1tmp << endl;
     //cout << "Second header: " << header2tmp << endl;
-    DoLog(0) && (Log() << Verbose(0) <<  "Parsed elements:");
+//    DoLog(0) && (Log() << Verbose(0) <<  "Parsed elements:");
     while (!input.eof()) {
       element *neues = new element;
@@ -332,5 +332,5 @@
       if ((neues->getNumber() > 0) && (neues->getNumber() < MAX_ELEMENTS)) {
         parsedElements[neues->Z] = neues;
-        DoLog(0) && (Log() << Verbose(0) << " " << *neues);
+//        DoLog(0) && (Log() << Verbose(0) << " " << *neues);
       } else {
         DoeLog(2) && (eLog() << Verbose(2) << "Detected empty line or invalid element in elements db, discarding." << endl);
@@ -345,5 +345,5 @@
       }
     }
-    DoLog(0) && (Log() << Verbose(0) << endl);
+//    DoLog(0) && (Log() << Verbose(0) << endl);
   } else {
     DoeLog(1) && (eLog() << Verbose(1) << "Could not open the database." << endl);
