fakedb: add union and project
datalog_test: add test_logical and skip_json options

just like myrial_test
datalog.model: use myrial's groupby code to construct groupby

Simpler and avoids a bug later on in myrialang
datalog.query_tests: reimplement the string-oriented tests with fakedb

even found a kind of a bug!

fix #253