Handle Filtering Errors correctly

This should display meaningful error message on failing to parse filter string .. also it will ensure we are not going to run any tests on failing to understand the filtering string ... 
Shouldn't things return IGrouping and keep this class with the same accessibility?