security: Introduce unsetKeyLocator method into SignatureInfo and Signature

Some specific signature types also provide an advisory (non-virtual)
override for unsetKeyLocator that disables reset and throws an
Exception.  As before, if an application really wants, it still can
unset the KeyLocator by setting a new SignatureInfo without the
KeyLocator.

Change-Id: Ibefd5f9ffbcb91f8a83e76db8704cba1b984f914
Refs: #1750
diff --git a/src/security/signature-sha256-with-ecdsa.cpp b/src/security/signature-sha256-with-ecdsa.cpp
index 1f67425..91b4a29 100644
--- a/src/security/signature-sha256-with-ecdsa.cpp
+++ b/src/security/signature-sha256-with-ecdsa.cpp
@@ -39,4 +39,10 @@
   }
 }
 
+void
+SignatureSha256WithEcdsa::unsetKeyLocator()
+{
+  throw Error("KeyLocator cannot be reset for SignatureSha256WithEcdsa");
+}
+
 } // namespace ndn