Implemented settings frame work.

Added class Settings which handles reading and writing machinery's
configuration file. The file default_settings.rb contains the
default values used when no configuration file is present.
I don't think we should expose the config hash in the API.