[WIP] Initial work on integating cmaes.

I started integrating CMAES into Simbody. Right now, everything is in quite a mess.

My objectives with this PR are:

- [x] Get basic CMAES functionality going.
- [x] Get the existing test cases to work (Rosenbrock, Schwefel, etc.).
- [x] cmaes readpara_t settings (e.g., convergence).
- [x] Diagnostics levels and file writing
- ~~[ ] Resuming.~~
- [x] Nice documentation about CMAES in Optimizer.h, describing possible settings.
- [x] No memory leaks.
- [x] Rewrite the test using `SimTK_TEST_` macros.
- [x] Replace abs with SimTK::abs.
- [x] Incorporate @nikohansen's updates to c-cmaes (cmaes_init_final).
- [x] In doxygen, mention that the errcmaes.dat file will be written regardless of the diagnostics level.
- ~~[ ] When to throw an exception upon failure?~~

This PR is going into the `cmaes-features` branch. There's much more to come, such as threading. However, to make this work manageable, those additions will come in subsequent PR's (still into the `cmaes-feature` branch).
This appears to be an extern function that has no prefix, meaning it could cause conflicts with user code. Best would be to make it static if it isn't used outside this file. Otherwise could prefix with cmaes_ if it has to be extern. Best to whine to Niko about this and get him to change it in the official repo, otherwise we'll lose the fix later. The general rule is that no compile-time or link-time symbol should be introduced that doesn't have its own "namespace".