First draft finally done. Ready to run tests.