Refurbished implementation for ror/rol

 - ror/rol now asserts their second parameters fits into current
   type bits boundaries instead of arbitrarily applying abs to it.
 - scalar and SIMD version share a generic algorithm based on shift/or
 - added support for Altivec vec_rl.
 - tests have been amended.
Fix dupe header in extensions/meta/vmx.hpp
Added SIMD implementation for rror/rrol

Those implementations:
 - are based on the same scalar algorithm but using if_else
 - use a similar NDEBUG special implementation than rsh* for
   the same reasons.
Added helper macro for make based implementation

Introduce the BOOST_SIMD_PP_IMPLEMENT_WITH_MAKE macro that
auto-geenrate the needed code for implementing a given function
as using make<T>(...) over all valid cardinals and with a specific
oeprations being done one each element of the ake call.
Make splat use BOOST_SIMD_PP_IMPLEMENT_WITH_MAKE
Fix #541 - Implement partial split functions

split_high and split_low now returns the half upper or lower
part of a vector casted to the next bigger type.

split common implementation has been made to call both functions
instead of using scalar loop.