Added initial implementation of move_if_noexcept

This is an implementation of [move_if_noexcept](http://www.cplusplus.com/reference/utility/move_if_noexcept/) .

Tests work well GCC in C++11 and C++03. Also checked move_if_noexcept with tests of Boost.CircularBuffer - works OK on GCC in C++11 and C++03 modes.

Questions:
* Is it OK to include <boost/move/traits.hpp> in <boost/move/utility.hpp> ?
* I'm not sure about BOOST_MOVE_OLD_RVALUE_REF_BINDING_RULES part. Could you please take a closer look at it?
Shouldn't all these be returning `const T&` rather than `T&`?