sysinfo: Move definition of calc_hostname into sysinfo.cpp

It appears that boost/asio/ip/host_name.hpp somehow transitively includes
windows.h even though BOOST_USE_WINDOWS_H is not defined.

We move the usage of boost::asio into a cpp file to avoid including windows.h
in all TPIE headers.
Modernize ut-external_priority_queue

Use boost::mt19937 instead of TPIE_OS_RANDOM and size_t instead of
TPIE_OS_OFFSET.

This lets us get rid of the include of test_portability.h.
test/cat.cpp: Use ifstream instead of ::open, ::read and ::close
test/cat.cpp: Pass a C string to the ifstream constructor

Support for passing a std::string was added in C++11. It is not allowed
in C++03.
test/queue.cpp: Add missing include
Add paths.h/cpp for environment-defined paths

This avoids us including windows.h in execution_time_predictor.cpp and
tempname.cpp. Now, we just include it in paths.cpp.
config.h: Remove unused definitions
config.h: Define TPIE_HAS_POSIX_FADVISE on systems other than Windows and Mac
util.cpp: Use POSIX rename in tpie::atomic_rename

A comment block in the code explains this change.
util: Move declaration of throw_getlasterror into file_accessor

This function is only used by the win32 file_accessor anyway.
util.cpp: Remove include of windows.h
posix.inl: Use TPIE_HAS_POSIX_FADVISE
Move posix::set_cache_hint implementation into header
Fix file_accessor::stdio implementation
stream_accessor.h: Fix include cycle
Move win32 file_accessor to its own cpp file to avoid including windows.h
Rename {posix,stdio}.inl -> cpp
Always compile stdio file_accessor
Fix posix.cpp includes
Fix stdio.cpp includes