Fixes bug in filters

- Filters that didn't have an add input option were throwing an error
when their legend was clicked. This adds a check for the existence of
the add input option toggle before attempting to retrieve the input.
Adds placeholder to add input fields partial
Formats ids, etc. in CSS convention format

There was a mix in ruby-style underscore delimited id names and
CSS-style dash delimited ids. This sets all ids to CSS-style convention
to keep separation of concerns and syntax apparent.
Adds more filter tests

Adds additional tests for filter states.