Add invalid syntax tests for query

Add Invalid syntax tests for the following operators:
- $or
- $eq

Added tests for $lt and $gt operators on strings
Add array comparison syntax tests

Abort query when syntax is invalid, based on what
is accepted in the service.

Notes:

{$or:[{"name":"mike}]} looks invalid however cloudant query in the service
accepts this as a valid query, so this implementation for sync also accepts
this as a valid query.

Add $lt and $gt tests

Add an array compare test

Add $eq tests

Add $eq tests and logic to abort query when test syntax is invalid

Update tests for $eq operator to use correctish syntax where  appropriate

Closes issue #24