Crypto refactor, thread-safety, ecdh, tests. fix #492

For now, calls to secp256k1lib have been replaced by cryptopp. Ironically, after a bit of research on performance, the takeaway is that rather than removing secp256k1lib, it maybe better to remove cryptopp in favor of openssl, keep secp256k1lib, and implement ECIES. 
All.h is not for Windows (that's _lib*.cpp) but for consolidated includes. Thus for end-users that don't want to have to determine and manually include all the various headers that make up a library. Examples are in Qt where you can e.g. include <QString>, <QMutex>, <QThis> and <QThat> or, alternatively just <QtCore>. Boost is similar, too.

For now it's <libxyz/All.h> rather than <libxyz.h> or just <xyz>, however, it's the same idiom and achieves the same thing. Down the line, I'm happy to move to the latter, just haven't got round to it yet.