add .gitignore
Slight code cleanup.
Fix checkbox and list item checks in parameter lists.

* A checkbox is only true if it is actually true, not just non-nil.
* If any check fails, then fail immediately.  Before this was allowing any
  checkbox condition to be true as long as one of them was true.
Clean up the widget management for checkboxes and dropdown lists.
Follow Model-View-Controller better to avoid infinite loops.

This avoids UpdateIcons() calling EvaluateScript() which may call
UpdateIcons() again.