Renamed diary/config.rb -> diary/runtime.rb
Added Runtime class and superclass for symbol hash
Added SymbolHash.from_hash method
added runtime implementation
Use Config and Runtime class in here
The Commandparser should be replaceable by a hash
We should use the configuration hash, so use the hash of the commandparser
Replaced instance variable by method
We must return something here
We should be safe here and return an empty array if there are no commands
We pass the runtime to the Executer, not the config
Added helper for checking if all keys are available
We must use Hash#merge! in here, to override own values
Removed Uniqueness module, added method(s/ generator) for it
Replaced ExecuteableCommand module by abstract supermethod
Replaced ConfigReaderCommand module by supermethod
Removed ExtendedQueryCommand module
Added abstract supermethods for command execution
Refactored Executer class

The executer is less abstract after the refactoring:

There are now commands with

    :before_everything
    :before_read_tree
    :on_tree
    :before_finish

methods. They are executed in this order. This patch refactores the
Executer class for this and removes all old code.
This command gets executed _before_ the tree is read