A form handling and validation library using forms as an entity