Split Interface into sub domains
Interface is a bit of a nightmare right now - basically code dump. Need to split it into subdomains. Propose something like
Interface: contains things that want to be persisted - but haven't dug into the new persistency stuff to understand really how that talks to the existing objects
Utils: contains things that only depend on STL - so some wrappers for STL stuff, exceptions, std::outputs (if we invented mausdouble etc they would go here), generic useful functions
Maths: contains pure maths objects
Dependency tree would go like
^ ^ | |
(Maths wants to do things like throw exceptions, make output, so wants to see our exception class).
I would like to get this in before too many folks move over to MAUS.