Added incremental interface.

Hi,

This patch adds an incremental interface (using `Decoder` from the `binary` package). It contains only new code, save for the `generic_pad` function which was split to reuse its padding computation.

A sample program is available as a Gist: https://gist.github.com/noteed/7568392

Thanks,
Thu