myrialang: compile temp relations to new encodings

@7andrew7 pointed out that hardcoding the Relation key in the JSON is probably
a
bad idea. Instead, I made the Java side handle that, if at all.
DoWhile: add an assert

As a sanity check
myrialang: add Store for Datalog, StoreTemp for DoWhile

A little annoying transformation, but fixes a bug with Datalog -> JSON.
Merge branch 'master' into disable-temp-store
raco-wide: change the interface to compiling/optimizing

We really don't want to pass around (name, op) pairs with implicit
parallel execution semantics. Instead, let's actually instantiate
Store/StoreTemp for the IDBs/Relations we want to define and add a
Parallel, Sequence, DoWhile for the operations we want to run in
parallel, in series, or in a loop. Implement this API change and then
update all the tests and calling code to support it.

TODO: I disabled rather than fixed the Grappa and Clang tests.
datalog: make . and ; equivalent EOL characters

Ran into some bugs with the example queries, actually. (Not sure how
they ever worked.)
expression.py: remove unused code
raco: more dead code and dead imports
myrialang: remove dead code and cleanup DoWhile condition
myrial_test: verify that plans can be stringified
viz: remove unused code, test in myrial_test
myrialang: minor cleanup
Merge branch 'master' into disable-temp-store
Merge branch 'master' into disable-temp-store-v2

Conflicts:
	raco/tests.py
replace uses of generateDot with raco.viz
remove generateDot
address algebra.Parallel[Store]] in clang compile
update to column_list to function refactoring
flake
deprecate language.{init,finalize} and resultsym argument
in favor of Store