Also clear DNS state when calling destroy network

Implemented for both binder and CommandListener versions.
If there are not callers of ndc, then we can in a future
change delete CommandListener::ResolverCmd.

Also: require NETWORK_STACK instead of CONNECTIVITY_INTERNAL.

Bug: 34953048
Bug: 64133961
Test: as follows
    - built
    - flashed
    - booted
    - runtest -x system/netd/tests/netd_integration_test.cpp
Change-Id: I232645c5a2f5196523ee42745de3c82349cd9e57
diff --git a/server/NetdNativeService.cpp b/server/NetdNativeService.cpp
index 1771a05..80081ea 100644
--- a/server/NetdNativeService.cpp
+++ b/server/NetdNativeService.cpp
@@ -176,8 +176,10 @@
 }
 
 binder::Status NetdNativeService::networkDestroy(int32_t netId) {
-    ENFORCE_PERMISSION(CONNECTIVITY_INTERNAL);
-    int ret = gCtls->netCtrl.destroyNetwork(netId);
+    ENFORCE_PERMISSION(NETWORK_STACK);
+    // Both of these functions manage their own locking internally.
+    const int ret = gCtls->netCtrl.destroyNetwork(netId);
+    gCtls->resolverCtrl.clearDnsServers(netId);
     return statusFromErrcode(ret);
 }