Work around serialization headers bug in boost 1.56.

serialization/shared_ptr.hpp uses singleton, but does not include its
declaration.  singleton is included from serialization/export.hpp so
if it is included before shared_ptr.hpp, the bug does not bite.
Make features.hpp depend on the has_objcryst flag.

Fix incorrect dependency for version.hpp.