Re #32; remove return_nil
Re #32; remove bad_value

This required changing how the AbstractDateTimeFilter worked. Now
instead of passing in a "klass" parameter, I shove the class into the
options.
Use a case statement for the time filter

This keeps all the filters consistent.