This design limits the usefulness of StopWatch, because you can't time specific parts of loops without somehow recording the times somewhere else. I'm not entirely sure what to suggest, but it's something to think about.