Make VPN more testable and update NC during network change

This commit:
- Updates the NetworkCapabilities with new underlying network during
  IKE Session re-establishment
- Create wrapper classes for IkeSession
- Allow injecting executor and NetworkAgent with
  the Dependencies class

Bug: 192077544
Test: atest VpnTest(new tests)
Change-Id: Ic98e3906c2b02fa8b9f4a8e1366b1dd8a363bb47
(cherry picked from commit 673162c6422fc121f8f5750c52e5a817161f819a)
Merged-In: Ic98e3906c2b02fa8b9f4a8e1366b1dd8a363bb47
1 file changed