higher order function for mapping via bread-fisrt search
higher order function for mapping via depth-fisrt search
flatten nested tuple into 1-d tuple with copies of elements
simple map over tuple
flatten nested tuple into 1-d tuple with pointers of elements
equivalent to boost::hana::overload