experiment with form errors to skip filtering on invalid data

This pull-request would need a bit more work to be considered complete, but it is an alternate implementation to address issue #84.  I mainly wanted to see if we could make use of Django's built-in form behavior better (which I think this does).

To summarize, I've altered the form instantiation to always create a bound form (using the initial field data and merging in any submitted data) and cleaning it immediately.  Then in the `qs` method, the default behavior for an invalid form will be to simply return a `none` queryset.  I also added a `strict` flag for the FilterSet, which defaults to True.  If the strict flag is False, then the filtering will be performed, but only with the valid values from the form's cleaned_data.