A major update, representing about a week's worth of work on the iostream
library wrappers.

Some minor updates on:-
    * get_object_id.hpp - add a function to unqualify C++ typeid's
    * make_threadsafe.hpp - use inheritance instead of pointer storage.

The wrappers for the C++ STL ios library have all been moved into the
streaming/ subdirectory, as the number of files has got quite large.

The headers all declare templates for wrapping and exposing iostream
library types, in a fairly repetitive manner, thusly:-

    * ios_base.hpp

ios_base contains a single abstract class, iostream_base, that aims to
contain the entire backbone and functionality required to expose classes
derived from ios_base, which is another abstract class defined in the C++
standard. In terms of Boost Python, iostream_base can be considered as a
to-python converter, as it declares both convert and get_pytype
functions.

    * istream.hpp
    * ostream.hpp
    * iostream.hpp

The above 3 headers contain specialisations of ios_base, for classes
that follow the C++ standard definition of istream's, ostream's and
iostream's.

    * return_iostream_base.hpp

Contains a number of Boost Python specific template specialisations
required for registering, converting and holding instances of istreams,
ostreams and iostreams. Notably, it has a custom `CallPolicy`, a
`HolderGenerator`, and a `ResultConverterGenerator`, for use with the
Boost Python API.

Also worth mentioning is the add_type_to_module template function, which
needs to be used when the wrapped classes should be instantiable from
Python code, and not just C++ code. (The class_<> mechanism doesn't
allow use of a custom PyTypeObject.)

    * return_istream.hpp
    * return_ostream.hpp
    * return_iostream.hpp

These headers contain a simple, public API for registering each type of
stream with Boost Python's registry. Each header contains a single
template function in the boost::python::namespace:

    template <class Pointee>
    make_"STREAM"_type_object(void)

where "STREAM" is either istream, ostream, or iostream.
return_*stream.hpp - Move registry functions into objects:: namespace