Implement user-defined fields.

Implement user-defined fields as specified in section 5.7 of http://www.debian.org/doc/debian-policy/ch-controlfields.html

Also, added unit tests.