OpenPGP: first go at openpgp-tool
opensc-explorer: allow acting as script interpreter

Take a filename as argument and interpret the commands in it.
opensc-explorer: add 'echo' command

Add 'echo' command that simply displays its arguments.

With the recently committed script interpreter feature and this echo command,
nice litte scripts can be written, like e.g.

 $ cat opengpg-userinfo
 #!/usr/bin/opensc-explorer
 cd 0065
 echo Name:
 cat 005B
 echo Language:
 cat 5F2D
 echo Gender:
 cat 5F35
 quit
opensc-explorer: better names for some functions
pkcs11: no more 'hacked' mode and 'onepin' module version

'OnePIN' version of opensc-pkcs11 module is not installed.
Instead, in the 'pkcs11' section of OpenSC configuration,
there is a possibility to define in a different manner
how to create slots for the present PINs and applications.
pkcs11: prepare internal API for multi-application mode

- simplify some of framework handles: remove from it's prototype the arguments that can be derived from the other arguments;
for exemple: foo(slot, slot->card) --> foo(slot)
- add the 'application' argument to the bind, unbind and similar handles;
- preview more then one framework data attached to the pkcs11card object.
- placehold for the future 'derive' and 'can_do' handles.
pkcs15: new procedure to get application by it's symbolic name

At the moment symbolic names for the on-card applications are 'generic', 'protected'.
This distinction used by pkcs11 and minidriver module to select the
'master' application in the cases when only reduced number of slots (one)
can be exposed by module (minidriver) or particular configuration (pkcs11).
pkcs11: create tokens and slots for multiple on-card applications

In card detection procedure bind all present applications
and create tokens for them.

Treatement of the different 'create-slots' configuration cases,
joining the objects from different applications into one slot
are previewed for the next commits.
pkcs15: new procedure to find an Auth PKCS#15 object (PIN) by flags
pkcs15init: change sc_pkcs15init_bind() prototype

Add new argument 'application-info',
that will allow to select the on-card application to by binded with.

pkcs11: use sc_pkcs15init_bind with 'AID' argument

Prototype of sc_pkcs15init_bind() has been changed to add argument with
AID of the on-card application to be binded with.
pkcs15init: add 'minidriver-style' profile option

The on-card support of minidriver could need some MD specific pkcs#15 (DATA) objects.
There is no standard for these objects.
New option will allow to choose one of the possible implementations.
pkcs15init: syntax changed for the ias(ecc) profiles
Merge pull request #41 from viktorTarasov/pull-request--multi-applications-mixed-slots

Multi on-card applications in PKCS#11 OpenSC module
Merge pull request #37 from marschap/staging

improvements to opensc-explorer & new tool openpgp-tool

Usefull improvement: probably could be used in automated tests.

I follow Ludovic and attract your attention onto the necessity, in the nearest future, 
to supply the doc/man for the tool newly introduced.
Without it the build of OpenSC package will simply not be possible.
pkcs11-spy: timestamp, environment strings in paths

Add to the spy logs the timestamp with millisecond resolution.
Environment strings are accepted in the key registries paths related to spy module.

pkcs11-spy: code formatting
pkcs11: ECHD and secret keys support from Douglas

This support were initially proposed by Douglas (https://github.com/dengert/OpenSC/commits/ecdh) and
then merged into SM branch (https://github.com/viktorTarasov/OpenSC-SM/tree/secure-messaging).
pkcs15: add 'sc_pkcs15_derive' missing for ECDH support

also, key path, that has to be selected before crypto operation,
can contain an aid.
AuthentIC: add SM related procedures

Added to facilitate future SM merge,
for a while disabled by conditional macro.
libopensc: some usefull macros, crc32 calculation procedure

Introduce some usefull define macros, error code 'inconsistent configuration'.
Introduce procedure to calculate CRC32 digest,
to be used in minidriver to calculate the 'freshness' values.
pkcs15: DIR EF can have EF_LINEAR structure

and so, in this case the checking file size is not appropriate method to validate it.
;use short call form for the log messages;