accepts a "__all__" key for general form errors
adding HiddenINput widget + change to use coffee's class/extends