Added BOOST_NOEXCEPT_IF(false) to destructors

I added the BOOST_NOEXCEPT_IF(false) after destructors so that on C++11 compilers it will not call std_terminate and allow useful error messages. I also just noticed a typo in the third commit message but I don't know how to fix it (I don't think that it is possible to change commit messages easily).