Fixed nestability of TYPE_* testing macros

Some of the NT2_TEST_TYPE_* macro where not properly setup to be
used in unbraced if/else statement and other smilar contexts. Their
definition have been amended to sue the do { } while(0) idiom.
Remove irrelevant boost.simd.memory related includes from unit tests.
Restructured documentation so Boost modules are properly setup

Boost.SIMD was made of libraries which cant be inserted inside
another libraries. Boost modules went up a level in the doc
hierarchy to allow this to work properly.
Move memory related function from simd/sdk to simd/memory
Added low level system wrapper for aligned allocation/deallocation handling
Split reallocate into reallocate and reuse functions
Optionnal global new/delete overloads using aligned allocation functions.
Added aligned_object class to imbue a given type with aligned new/delete overloads
Added aligned stack buffer creation macro
Move memory outside of toolbox/
Made insert return void
Homogeneize extract to never return references.

Tests have been changed accordingly and complex case have
been added in proper module.
Move BOOST_SIMD_ALLOCA_ALIGNMENT to memory/parameters.hpp
memory::byte is now deprecated

This typedef where serving little to no purpose. It has been
removed and all code using it now sue void* instead.
boost::simd::memory namespace is deprecated

Most element of Boost.SIMD.Memory lived in boost::simd. Remaining parts
of boost::simd::memory:: have been moved and dependent code have been
modified.
Added BOOST_SIMD_MEMORY_OVERLOAD_NEW_DELETE_SIMD macro

BOOST_SIMD_MEMORY_OVERLOAD_NEW_DELETE_SIMD acts as a defaulted
BOOST_SIMD_MEMORY_OVERLOAD_NEW_DELETE usign default SIMD alignment
boundary.
Move alignment macro into simd/preprocessor.
Added contents to memory documentation
Move stack_buffer to preprocessor
Split new/delete overload macro and aligned_object in different files