Index: src/Actions/MapOfActions.cpp
===================================================================
--- src/Actions/MapOfActions.cpp	(revision df32eec66d050ebe15e7e87b16f4dc75abca8de8)
+++ src/Actions/MapOfActions.cpp	(revision a8188deed094aea508332ee44b27c211808bf172)
@@ -28,8 +28,8 @@
 #include "Patterns/Singleton_impl.hpp"
 
+#include <boost/filesystem.hpp>
 #include <boost/lexical_cast.hpp>
 #include <boost/optional.hpp>
 #include <boost/program_options.hpp>
-#include <boost/filesystem.hpp>
 
 #include <iostream>
@@ -480,7 +480,7 @@
 
   // default values for any action that needs one (always string!)
-  CurrentValue["bin-width"] = "0.5";
-  CurrentValue["fastparsing"] = "0";
-  CurrentValue["periodic"] = "0";
+  CurrentValueMap["bin-width"] = "0.5";
+  CurrentValueMap["fastparsing"] = "0";
+  CurrentValueMap["periodic"] = "0";
 
   // put action into each menu category
@@ -691,5 +691,5 @@
 bool MapOfActions::isCurrentValuePresent(const char *name) const
 {
-  return (CurrentValue.find(name) != CurrentValue.end());
+  return (CurrentValueMap.find(name) != CurrentValueMap.end());
 }
 
@@ -698,8 +698,8 @@
   int atomID = -1;
   if (typeid( atom ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    atomID = lexical_cast<int>(CurrentValue[name].c_str());
-    CurrentValue.erase(name);
+    atomID = lexical_cast<int>(CurrentValueMap[name].c_str());
+    CurrentValueMap.erase(name);
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -710,8 +710,8 @@
   int Z = -1;
   if (typeid(const element ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    Z = lexical_cast<int>(CurrentValue[name].c_str());
-    CurrentValue.erase(name);
+    Z = lexical_cast<int>(CurrentValueMap[name].c_str());
+    CurrentValueMap.erase(name);
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -722,8 +722,8 @@
   int molID = -1;
   if (typeid( molecule ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    molID = lexical_cast<int>(CurrentValue[name].c_str());
-    CurrentValue.erase(name);
+    molID = lexical_cast<int>(CurrentValueMap[name].c_str());
+    CurrentValueMap.erase(name);
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -735,7 +735,7 @@
   double tmp;
   if (typeid( BoxValue ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    std::istringstream stream(CurrentValue[name]);
+    std::istringstream stream(CurrentValueMap[name]);
     stream >> tmp;
     M.set(0,0,tmp);
@@ -754,5 +754,5 @@
     M.set(2,2,tmp);
     _T = M;
-    CurrentValue.erase(name);
+    CurrentValueMap.erase(name);
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -761,6 +761,6 @@
 void MapOfActions::queryCurrentValue(const char * name, class Vector &_T) {
   if (typeid( VectorValue ) == *TypeMap[name]) {
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     stream >> _T[0];
     stream >> _T[1];
@@ -772,6 +772,6 @@
 void MapOfActions::queryCurrentValue(const char * name, class BoxVector &_T) {
   if (typeid( VectorValue ) == *TypeMap[name]) {
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     stream >> _T[0];
     stream >> _T[1];
@@ -786,8 +786,8 @@
   atom *Walker = NULL;
   if (typeid( std::vector<atom *> ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     while (!stream.fail()) {
       stream >> atomID >> ws;
@@ -807,8 +807,8 @@
   const element *elemental = NULL;
   if (typeid( std::vector<const element *> ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     while (!stream.fail()) {
       stream >> Z >> ws;
@@ -827,8 +827,8 @@
   molecule *mol = NULL;
   if (typeid( std::vector<molecule *> ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     while (!stream.fail()) {
       stream >> molID >> ws;
@@ -847,8 +847,8 @@
   std::string tmp;
   if (typeid( boost::filesystem::path ) == *TypeMap[name]) {
-    if (CurrentValue.find(name) == CurrentValue.end())
+    if (CurrentValueMap.find(name) == CurrentValueMap.end())
       throw MissingValueException(__FILE__, __LINE__);
-    std::istringstream stream(CurrentValue[name]);
-    CurrentValue.erase(name);
+    std::istringstream stream(CurrentValueMap[name]);
+    CurrentValueMap.erase(name);
     if (!stream.fail()) {
       stream >> tmp >> ws;
@@ -859,5 +859,4 @@
 }
 
-
 void MapOfActions::setCurrentValue(const char * name, class atom * &_T)
 {
@@ -865,5 +864,5 @@
     std::ostringstream stream;
     stream << _T->getId();
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -875,5 +874,5 @@
     std::ostringstream stream;
     stream << _T->getAtomicNumber();
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -885,5 +884,5 @@
     std::ostringstream stream;
     stream << _T->getId();
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -901,5 +900,5 @@
     stream << M.at(1,2) << " ";
     stream << M.at(2,2) << " ";
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -913,5 +912,5 @@
     stream << _T[1] << " ";
     stream << _T[2] << " ";
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -925,5 +924,5 @@
     stream << _T[1] << " ";
     stream << _T[2] << " ";
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -937,5 +936,5 @@
       stream << (*iter)->getId() << " ";
     }
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -949,5 +948,5 @@
       stream << (*iter)->getAtomicNumber() << " ";
     }
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -961,5 +960,5 @@
       stream << (*iter)->getId() << " ";
     }
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -971,5 +970,5 @@
     std::ostringstream stream;
     stream << _T.string();
-    CurrentValue[name] = stream.str();
+    CurrentValueMap[name] = stream.str();
   } else
     throw IllegalTypeException(__FILE__,__LINE__);
@@ -1082,6 +1081,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< bool >()->default_value(lexical_cast<int>(CurrentValue[*OptionRunner].c_str())) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< bool >()->default_value(lexical_cast<int>(CurrentValueMap[*OptionRunner].c_str())) :
                         po::value< bool >(),
                   getDescription(*OptionRunner).c_str())
@@ -1105,6 +1104,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< int >()->default_value(lexical_cast<int>(CurrentValue[*OptionRunner].c_str())) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< int >()->default_value(lexical_cast<int>(CurrentValueMap[*OptionRunner].c_str())) :
                         po::value< int >(),
                   getDescription(*OptionRunner).c_str())
@@ -1121,6 +1120,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< double >()->default_value(lexical_cast<double>(CurrentValue[*OptionRunner].c_str())) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< double >()->default_value(lexical_cast<double>(CurrentValueMap[*OptionRunner].c_str())) :
                         po::value< double >(),
                   getDescription(*OptionRunner).c_str())
@@ -1137,6 +1136,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< std::string >()->default_value(CurrentValue[*OptionRunner]) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< std::string >()->default_value(CurrentValueMap[*OptionRunner]) :
                         po::value< std::string >(),
                   getDescription(*OptionRunner).c_str())
@@ -1167,6 +1166,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< int >()->default_value(lexical_cast<int>(CurrentValue[*OptionRunner].c_str())) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< int >()->default_value(lexical_cast<int>(CurrentValueMap[*OptionRunner].c_str())) :
                         po::value< int >(),
                   getDescription(*OptionRunner).c_str())
@@ -1183,6 +1182,6 @@
             ListRunner->second->add_options()
               (getKeyAndShortForm(*OptionRunner).c_str(),
-                  CurrentValue.find(*OptionRunner) != CurrentValue.end() ?
-                        po::value< int >()->default_value(lexical_cast<int>(CurrentValue[*OptionRunner].c_str())) :
+                  CurrentValueMap.find(*OptionRunner) != CurrentValueMap.end() ?
+                        po::value< int >()->default_value(lexical_cast<int>(CurrentValueMap[*OptionRunner].c_str())) :
                         po::value< int >(),
                   getDescription(*OptionRunner).c_str())
Index: src/Actions/MapOfActions.hpp
===================================================================
--- src/Actions/MapOfActions.hpp	(revision df32eec66d050ebe15e7e87b16f4dc75abca8de8)
+++ src/Actions/MapOfActions.hpp	(revision a8188deed094aea508332ee44b27c211808bf172)
@@ -17,4 +17,5 @@
 #include <vector>
 #include <typeinfo>
+
 
 #include "Exceptions/IllegalTypeException.hpp"
@@ -32,5 +33,4 @@
 
 namespace po = boost::program_options;
-namespace fs = boost::filesystem;
 
 using boost::lexical_cast;
@@ -138,5 +138,5 @@
   friend class MapOfActionsTest;
 public:
-  enum OptionTypes { None, Boolean, Integer, File, ListOfIntegers, Double, ListOfDoubles, String, ListOfStrings, Vector, ListOfVectors, Box, Molecule, ListOfMolecules, Atom, ListOfAtoms, Element, ListOfElements };
+  enum OptionTypes { None, Boolean, File, Integer, ListOfIntegers, Double, ListOfDoubles, String, ListOfStrings, Vector, ListOfVectors, Box, Molecule, ListOfMolecules, Atom, ListOfAtoms, Element, ListOfElements };
 
   // getter for the action descriptions and short forms
@@ -175,12 +175,13 @@
   void queryCurrentValue(const char * name, std::vector<const element *>&_T);
   void queryCurrentValue(const char * name, std::vector<molecule *>&_T);
-  void queryCurrentValue(const char * name, fs::path&_T);
+  void queryCurrentValue(const char * name, boost::filesystem::path&_T);
+
   template<typename T> void queryCurrentValue(const char * name, T &_T)
   {
     if (typeid( T ) == *TypeMap[name]) { // constructor of type_info is private, hence can only store by ref or ptr
-      if (CurrentValue.find(name) == CurrentValue.end())
+      if (CurrentValueMap.find(name) == CurrentValueMap.end())
         throw MissingValueException(__FILE__, __LINE__);
-      _T = lexical_cast<T>(CurrentValue[name].c_str());
-      CurrentValue.erase(name);
+      _T = lexical_cast<T>(CurrentValueMap[name].c_str());
+      CurrentValueMap.erase(name);
     } else
       throw IllegalTypeException(__FILE__,__LINE__);
@@ -190,8 +191,8 @@
     T temp;
     if (typeid( std::vector<T> ) == *TypeMap[name]) { // constructor of type_info is private, hence can only store by ref or ptr
-      if (CurrentValue.find(name) == CurrentValue.end())
+      if (CurrentValueMap.find(name) == CurrentValueMap.end())
         throw MissingValueException(__FILE__, __LINE__);
-      std::istringstream stream(CurrentValue[name]);
-      CurrentValue.erase(name);
+      std::istringstream stream(CurrentValueMap[name]);
+      CurrentValueMap.erase(name);
       while (!stream.fail()) {
         stream >> temp >> std::ws;
@@ -211,5 +212,6 @@
   void setCurrentValue(const char * name, std::vector<const element *>&_T);
   void setCurrentValue(const char * name, std::vector<molecule *>&_T);
-  void setCurrentValue(const char * name, fs::path&_T);
+  void setCurrentValue(const char * name, boost::filesystem::path&_T);
+
   template<class T> void setCurrentValue(const char * name, T &_T)
   {
@@ -217,5 +219,5 @@
     if (typeid( T ) == *TypeMap[name]) {  // constructor of type_info is private, hence can only store by ref or ptr
       stream << _T;
-      CurrentValue[name] = stream.str();
+      CurrentValueMap[name] = stream.str();
     } else
       throw IllegalTypeException(__FILE__,__LINE__);
@@ -229,5 +231,5 @@
         stream << (*iter) << " ";
       }
-      CurrentValue[name] = stream.str();
+      CurrentValueMap[name] = stream.str();
     } else
       throw IllegalTypeException(__FILE__,__LINE__);
@@ -244,5 +246,5 @@
 
   // map of the action names and their description
-  std::map<std::string, std::string> CurrentValue;
+  std::map<std::string, std::string> CurrentValueMap;
   std::map<std::string, std::string> DescriptionMap;
   std::map<std::string, std::string> ShortFormMap;
