[eval2] Split implementation-specific code into separate compilation units.
[eval2] Clean up, fix cross-compilability.
[eval2] Refactor.
[eval2] Clean up more.