The first version will be written in Python. Why? Because I don't have to think about a lot of things I'll have to think about if I used a lower-level language. I already have too much on my plate.
The first version intentionally won't have a GUI. I'd also like to drop the optimizer for the first version. Again, both are too much to think about for now.
But I would like to start testing as soon as possible. I'll write a short document summarizing what sort of test data I'd like to have and how to get it.
The second version will probably be written in C++, but I haven't decided yet.
My job ends after next week, so I should be able to start doing some real work by then.

Edit: Job over. I have a few things to take care of and then I can start working.