:: Int -> [a] -> [a] package:dsp

downsample throws away every n'th sample, eg,
downsample 2 [ 1, 2, 3, 4, 5, 6 ] == [ 1, 3, 5 ]
upsampleAndHold replicates each sample n times, eg,
upsampleAndHold 3 [ 1, 2, 3 ] == [ 1, 1, 1, 2, 2, 2, 3, 3, 3 ]