Add initial version of the ES algorithm.

Base ES algorithm. Still needs to be fully implemented.