organize source files
decouple GUI from the background tasks
add tests and test runner so benchmarks can be performed headlessly
remove logcat spam