Added BOOST_NORETURN macro to mark functions that do not return normally...

The implementation is based on boost/exception/detail/attribute_noreturn.hpp.