Associate a debug_info field with unnamed column references
Pass along field name when converting to an unnamed ref
Rename exception for accessing a non-grouped term in an aggregate
UnnamedAttributeRef: restore $ for position
scheme: implement __ne__

scheme != scheme should be the same as !(scheme == scheme)
rules: add RemoveNoOpApply that removes no-op Apply

A a rule to remove Apply that have no effect on the tuples they pass. We
add these in order to use PushApply and RemoveUnusedGroupBy, but once
their work is done we we want to remove them.

Use it in MyriaLDTreeAlgebra and also add tests. (Note that many of the
existing tests effectively also test this rule, so I only added a two
trivial tests.)
rules.PushApply: remove TODO
utility: add str_list and str_list_inner helpers

These convert lists to string using str, instead of repr, for the member objects. The
_inner variant does not append the brackets, as this is widely used in operator shortStr function.
raco: implement proper repr, str project-wide

See #273. Note that `%r` is the repr version of `%s`, and that `!r` is
analogous for string.format.
myrial_test: test that plans are correct when translated through repr

@7andrew7 and better ideas? I don't love the blanket import-everything-ever at the top.
myrial_test: remove replace_with_repr to utility file

This at least encapsulates importing everything from the project
in its own file.
Merge pull request #266 from uwescience/preserve_attribute_name

Pass along better debug info when accessing a non-grouped field in an aggregate expression
Merge branch 'master' into remove-noop-apply-bug-fixes
Merge branch 'master' into proper_repr

Conflicts:
	raco/expression/expression.py
Merge pull request #272 from uwescience/remove-noop-apply-bug-fixes

Remove noop apply, plus a bug fixe
Merge pull request #274 from uwescience/proper_repr

Proper repr
Merge branch 'master' into bmyerz-myrial

Conflicts:
	raco/language/myrialang.py
	raco/rules.py