added ode and some timing facilities.  Some refactoring