encoding: Construct Block from istream

Change-Id: Iee330e861197e9c347fd7c15a887c2b9fc5552be
security: Moving signInTpm(Data& data, ...) from SecTpm to KeyChain.

The method is no longer a pure virtual method, and sub-classes of SecTpm do not have to implement this one.
Although the method is now a part of KeyChain, but it is still named as signInTpm to be distinguished from the other sign methods of KeyChain.
signInTpm takes the public key name as argument, well sign methods take certificate name as argument.

Change-Id: I6a1546f760a7446341a152bb2f716032f2b7bb58
security: Adding SecTpmFile which a pure file based "TPM".

Change-Id: I73b6ed8e0876217642ab6a8733c4da35ef9e69d9
security: Changing security storage location. Adding test case

1. The default location of publilc info storage of SecPublicInfoSqlite3 is changed to ~/.ndnx/ndnsec-public-info.db
2. The default location of key directory of SecTpmFile is changed to ~/.ndnx/ndnsec-tpm-file/
3. Add a test case for SecTpmFile.

Change-Id: I2e314072ff05e3b8da308b577bc85d417ff22476
name: Added compare and comparison operators.  Remove breadthFirstLess

Change-Id: Ie940733ac8460636ee6087f03e78d545373a26d9
security: Hiding sqlite3 from the header of SecPublicInfoSqlite

Change-Id: Ic45d06b013bbe8f96f9472a6f8b95d02820437f5
security: Rename KeyChain::signInTpm to KeyChain::signDataInTpm, and make it priviate.

This method is only used internally by KeyChain, and its name conflicts with a virtual method of Tpm.

Change-Id: I9f2f75d8451f93ba5264f6108a708a01a4d354eb
node: Fix of getting a pointer to the static member function (& necessary for some compilers)

Change-Id: I7b48310f37a189ee325c1cf9460010387df2400c