Re-factor the runtime class.

Add RuntimeUIStrategy for creating and showing the runtime window by provided params. This will separate the UI related implementations into the new strategy object.
don;t think it's good to access command line from here, but it's OK for now. We'll improve it later.