Added a basic module definition.
Added an abstract module definition.
Added support for configuration files.
Added support for modules and user configurations.