The configuration class has a bunch of public member variables. We should instead be using accessors so we ensure that we cannot incorrectly create the object, causing sefaults or incorrect data on the read/write.
For example, if you set numHydroMaps to a number, but don't set the hydro map names, then you can cause a segfault in Configuration::write().
Related to #104.