Partial rewrite

* Changed the configuration scheme - it's a lot clearer now.
* Relay names are now strings instead of numeric ids
* Created a dummy output module for debugging
* Clearer function names in output_container
* Moved more functionality from IoPort classes to IoPortBase
* Moved more functionality from Output modules to OutputBase
* Fixed numbering of GenericRelayBoard