Refactored meta-programming tools (tested)
remove fun_traits (using fun_map + std::result_of to infer result type)
refactored fun_tags and is_simdizable (tested)
refactored expression and simd control (tested)
merged with master