FreeQuery: And and Or
FreeQuery: major refactoring

1. no more conditional class
2. And and Or take arbitrary free queries
3. where takes arbitrary queries
4. sqlPrepared now uses state monad