CB-8210 Use PluginResult instead of sendJavascript() for keyboard events (close #142)

- Initialize a message channel for native -> Javascript in the core App plugin
- Change keyboard detection to send events via plugin message channel, instead
  using eval() (i.e. webView.sendJavascript())