Added KillSim method and default solver to context (and some tests).

* If KillSim method on context is called one or more times, terminates
  simulation at the end of the current timestep.

* Added test that a bare simulation (no agents) - just an initialized timer
  and blank context run.

* If context's solver is null, it sets the solver to a default GreedySolver.

* Added test to check early simulation termination works.