GEOMESA-313 Handle Id and * queries

Picking up from #269 and https://github.com/locationtech/geomesa/pull/277
I believe that is not what we what here (adding all Ids to the set). This is dealing with situations like
IN('A','B','C') AND IN('A').  The set in each IN is actually an OR, so this is the same as (A OR B OR C) AND A, which is simply A. 

This is why I'm taking the intersection of the set from each IN. 

Admittedly a user would have to try very hard to trigger this logic, but you never know when someone will write a crazy script that will generate such queries.