Macro generated case class Tuple Setter and Converter

This is a first stab at using macros to begin generating useful code for our users.

Caveats:
* this only works on 2.10. I play around with it by doing: ```./sbt ++2.10.4 "scalding-macro/console"```
* this depends on macro paradise. I do this for quasiquotes, which GREATLY simplify the implementation... it isn't strictly necessary, but would greatly complicate things. quasiquotes are part of scala 2.11 so depending on macro paradise only for them seems ok to me.
* I need to add tests, though I've tested it along the way of course.

What are other things we might want to use macros for?
why is this change here? It seems like it breaks code that only defines local sources, which could have been done in the past.

I don't see a reason to remove this support, and if we are going to do it, we should do it with a bit more design.