code: function(keypath, value, attributes) {
        var content = "";
        if (!attributes) { attributes = {}; }
        if (attributes.hidden_element !== false) {
          content += this.hidden(keypath, {'value': !value});
        }
        delete attributes['hidden_element'];
        content += this.radio(keypath, value, $.extend({type: 'checkbox'}, attributes));
        return content;
      }
docs: creates a checkbox input for keypath with the value `value`. Multiple checkboxes can be created with different value, if `value` equals the current value of the key of the form builder's object the attribute checked='checked' will be added.  By default `checkbox()` also generates a hidden element whose value is the inverse of the value given. This is known hack to get around a common gotcha where browsers and jQuery itself does not include 'unchecked' elements in the list of submittable inputs. This ensures that a value should always be passed to Sammy and hence the server. You can disable the creation of the hidden element by setting the `hidden_element` attribute to `false`