Add Button fields and examples

Two types of Fields are provided, <button> and
<input>. type="reset" aren't provided, but can be
provided by subclassing ButtonField or
ButtonInputField.
Change the hidden filter into a test

Using a test makes the semantics a little clearer.
Also, testing the widget is a little more precise
than testing the field.