Implemented configuration frame work

Added reading and writing machinery's configuration file.
The file machinery_config.rb contains the default values
used when no configuration file is present.

please extract `config = MachineryConfig.new` into a `subject { MachineryConfig.new }`, it is repeated a lot.