boost: drop dependency on is_fundamental in serialization

There's only one case where a vector containing a fundamental type is
serialized all-at-once, unsigned char. Anything else would lead to
strange results.

Use a dummy argument to overload in that case.
boost: drop dependency on tuple in serialization

There's only one user of this form of serialization, so it can be easily
dropped. It could be re-added if desired when we switch to c++11.
boost: remove CPrivKey dependency from CECKey

This allows CECKey to be used without directly depending on the secure
allocators
boost: drop boost dependency in core.cpp
boost: drop boost dependency in utilstrencodings.cpp
boost: drop boost dependency in version.cpp.

Also add a test to verify.
Merge pull request #5082

5f4bcf6 boost: drop boost dependency in version.cpp. (Cory Fields)
352058e boost: drop boost dependency in utilstrencodings.cpp (Cory Fields)
e1c9467 boost: drop boost dependency in core.cpp (Cory Fields)
e405aa4 boost: remove CPrivKey dependency from CECKey (Cory Fields)
5295506 boost: drop dependency on tuple in serialization (Cory Fields)
1d9b86d boost: drop dependency on is_fundamental in serialization (Cory Fields)