other stuff to do
  double buffering.
  auto-solve capability.
