Better support of parsing / formatting: it's now both more generic (works for any input type) and functional (can be used to transform an Input[A] to Input[B], for example). The mechanism is very similar to map, but is far more flexible as each call can read an arbitrary number of elements from the underlying Input.