Implement subsystem parser
Depends on #169 (closed)
Every system should have its own namespace with variables being prefixed by that namespace, e.g. 'electrons.spacing'. Variables can also be defined without namespace to be globally valid. This is now implemented, see !603 (merged).
Every system then has a parser object that knows about its namespace and returns the corresponding variables.