Bug 1075306 - Implement InputWindow (inherits from AppWindow)

- Instances of InputWindow replaces those iframes we were keeping in InputFrameManager.
- InputAppTransitionManager has been eliminated, in favor of already-built AppTransitionController that works closely with AppWindow.
- The coupling of KeyboardManager, InputFrameManager and InputWindows shall be resolved in a following bug where we'll implement InputWindowManager.
- Flow of showing/hiding/reusing/switching input apps & layouts has been streamlined.
If |configs.manifestURL| is not in |this._inputWindows|, create a new empty mapping first before we try to actually use the mapping?

(recap: this._inputWindows is two-dimensional mapping)