Macro impl_for_tuples_up_to

macro impl_for_tuples_up_to($mac:ident! { $($x:ident, $($y:ident,)*)? }) {
    ...
}

Calls mac on lists of arguments from size 0 to 1 + count($y).