Use `form` library when binding to a Form

The change makes it possible to encode and decode any kind of value,
including those with arbitrary nesting and repetition (providing parity
with JSON binding.)