Start work on scalding-lingual support.

Lingual has some nice features that would be nice to have for some small adhoc jobs and especially with the Scalding REPL.  These changes do not contain the repl code yet(coming in a future pull request) but attempt make lingual a bit easier to use with Scalding libraries and allow for scalding code to still be written and run with a Lingual job.

This code also does not support nested functions yet in queries like thrift.  Should be technically possible based on conversations with the Lingual team.


I was going with this approach to make it a bit closer to how you would use a sql database.  With some of these functions and more so with the REPL code that will come later I am trying to make the library easy to understand for people new to Scala.

So something like this would not look to odd to a person coming form sql world hopefully:

table(UserTable())
table(TweetTable())
output(Tsv("somewhere"))

query("....")

While this looks a bit harder to parse at first.

override def tables = Seq(UserTable(),TweetTable())