[Android] Refine the key event dispatch for xwalkview

Including following changes:
1. Hook shouldOverrideKeyEvent and onUnhandledKeyEvent into
   content layer correctly.
2. Move the key event handling in xwalkview into dispatchKeyEvent.

After change the process of key dispatch in xwalkview will be:
  Activity.dispatchKeyEvent
  -> XWalkClient.shouldOverrideKeyevent
        <if shouldOverrideKeyevent returns true>
     -> XWalkView.dispatchKeyEvent (handles backkey here)
        <if shouldOverrideKeyevent returns false>
     -> dispatch keyevent to renderer
        <if renderer doesn't consume the keyevent>
        -> web_contents_delegate::HandleKeyboardEvent
           -> XWalkWebContentDelegate.handleKeyboardEvent
              -> XWalkClient.onUnhandledKeyevent

It's pre-adjust for Embedding API v2.

Related to bug: XWALK-2003
Merge pull request #2129 from wang16/keydispatch_api

[Android] Refine the key event dispatch for xwalkview