Preliminary support for non-variadic template implementation of abc::ostream::print()

Move most of the implementation of abc::_ostream_print_helper<> into a
separate class, abc::_ostream_print_helper_impl, so that the same code
can be shared by the variadic and the non-variadic implementations of
abc::_ostream_print_helper.
Sort methods by declaration order
Add non-variadic template implementation of abc::ostream::print() and related

Add alternative non-variadic template implementations of:
•  abc::ostream::print()
•  abc::_ostream_print_helper
•  abc::str_base_::format()

These bring closer compatibility with MSC16.
Merge remote-tracking branch 'remotes/origin/master' into vs2010
Move definition of abc::filedesc::smc_fdNull to .cxx file

MSC16 doesn’t like the constant’s value being specified in the .hxx file.
Undefine stdin, stdout, stderr

MS CRT defines these globals as macros, so they need to be undefined to
avoid clashing with abc::stdfile values.