Make test suite accept command line parameters
Activate debug mode for now
Refactor and introduce new abstract concepts

- Iteration scheme has been separated from the local algorithm
- Introduced a domain class
- Put everything in a namespace
- Clear out references/pointers
- Expanded tests accordingly