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?
Will it possibly be much slower if we attempted to use the names and the indexes? i guess we would need to use the names then fall back if it doesn't exist? There are two use cases that spring to mind here, one is fine with ID's, one is more natural with field names though could work with ID's. That is serializing to CSV/TSV vs DB. Going to DB field names everywhere in generated stuff likely makes sense so your just threading it through the generated code. But it could be made to work. Not sure what'll be the best/worst here in general.