Added HList.permutations & Tuple.permutations

+ HList.{mapCons, interleave, flatMapInterleave, mapTupler} that I used for the implementation. I can drop the syntax methods if they aren't useful otherwise & move all of the type classes into ops.Permutations

I haven't implemented Coproduct.permutations yet