Prefer () initializers to {}

This helps to reduce diff with cxx98 branch.
test: Use mem_block instead of Vectors to test extract_bits()
dispatcher: Fix a bug in macro generation
test: Add tests for dispatchers with multiple arguments
dispatch: Pass return and argument types to Dispatcher as a function ptr

Neither Dispatcher, nor DispatchRegistrator does not need to know what
exact return and parameter types of the dispatched function are. We can
pass the type of the function pointer directly.
Make the simdpp::detail namespace usable outside SIMDPP_ARCH_NAMESPACE
test: Do not use a lambda where a simple variable suffices
Remove conversion to 'compatible' native floating-point vector types

Providing several conversions to native vector types creates a lot of
problems with ambiguity on Clang. The advantage of providing them is
unclear too: if need arises, an explicit cast to appropriate libsimdpp
type is a better solution than dealing with native vector types.
Therefore, these casts are removed.
compare: Remove unused variables
shuffle: Rename broadcast_all() to broadcast_w()

It is a good idea to reserve a suffix for consistent naming of functions
that operate on entire vectors (when they are wider than 128 bits)
instead of 128-bit lanes separately. *_all suffix is not appropriate for
that, as it may lead to confusing function names. Thus, we select
another another suffix (*_w, w = wide) and rename the only (recently
created) function it applies to.