Modifications in classes of RunTime and CPUTime

As Dimm suggested. I subtracted this PR from  #487 specially for classes  of  ``PETScWallClockTimer``, ``RunTime``, and ``CPUTime``. With the modifications in ``RunTime`` and ``CPUTime``, member ``stop()`` was removed. @TomFischer and @endJunction ,please take a look.

PR #487 will be closed temporarily due to the ``reset node ID`` issue, and it will be reopened once a FEM (say for a simple elliptic problem ) is completed in  the official repository. 
gcc says it replaced `const double elapsed()` with `double elapsed()` as `double` is returned by value and `const` has no effect in this context. besides, what i meant in the comment is chaning `double elapsed()` to `double elapsed() const`, which you have done in the latest commit.