Removed Settings from Request (for now).
Changed Settings to be read-only structure.
Added EngineSettings - to incorporate multiple settings into one
interface.
Use EngineSettings inside the Engine.
Added iter_submodules method to utils/misc.