Re-factor the runtime class.

Add RuntimeUIStrategy for creating and showing the runtime window by provided params.
Merge pull request #2562 from takethathe/runtime_ui_refactor

Re-factor the runtime class.