Support user-facing adaptivity in Python + doc improvements
Closes #29 This adds a *dt_next* parameter to *run* and *run_single_step* to support adapting the time step. Additionally, the generator returned by *run* supports sending the next value of *dt*. In addition, this change: * Reduces code duplication between interpreter and codegen: the module *dagrt.events_python* is created to hold code for events * Improves the interpreter documentation * Makes a few stylistic fixes to the Python code generator The version is bumped to 2019.5