AppLink Events

Besides the "revert of revert",  these are newly added:

1. compatible with protocol to release

2. add unit test

3. provided gradle dependencies the support lib without actually adding it.

add support lib as provided dependencies